CHỦ ĐỀ F

You might also like

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 9

CHỦ ĐỀ F: GIẢI QUYẾT VẤN ĐỀ VỚI SỰ TRỢ GIÚP CỦA MÁY TÍNH

LẬP TRÌNH CƠ BẢN

Bài 18: Lập trình giải quyết bài toán trên máy tính
Môn học/Hoạt động giáo dục: Tin học; Lớp: 10

Thời gian thực hiện: 3 tiết

I. MỤC TIÊU
1. Kiến thức: Học xong bài này, HS sẽ đạt được yêu cầu sau:
 Trình bày tóm tắt được các bước cần thực hiện khi giải một bài toán bằng lập trình
trên máy tính với một ngôn ngữ lập trình bậc cao.
2. Năng lực:
- Năng lực tin học:
Nlc: Giải quyết vấn đề với sự hỗ trợ của công nghệ thông tin và truyền thông
 HS hiểu được các bước của quá trình giải bài toán trên máy tính: xác định bài toán,
tìm thuật toán và cách tổ chức dữ liệu, viết chương trình, kiểm thử chương trình.
- Năng lực chung:
+ Xác định được nhiệm vụ học tập. (Tự chủ và tự học)
+ Phân tích được các công việc cần thực hiện để hoàn thành nhiệm vụ của nhóm.
(Giao tiếp và hợp tác)
+ Hình thành tư duy logic, lập luận chặt chẽ, và linh hoạt trong quá trình học tập, giải
quyết được những nhiệm vụ học tập theo nhóm và thể hiện sự sáng tạo. (Giải quyết vấn
đề và sáng tạo)
3. Phẩm chất:
- Có ý thức học tập, ý thức tìm tòi, khám phá và sáng tạo. (Chăm chỉ)
- Có ý thức làm việc nhóm, tôn trọng ý kiến các thành viên khi hợp tác. (Trách
nhiệm)

II. THIẾT BỊ DẠY HỌC VÀ HỌC LIỆU

1. Giáo viên 
- Thiết bị/đồ dùng hỗ trợ: Máy tính, máy chiếu.
- Học liệu: Sách giáo khoa, sách giáo viên, giáo án, bài giảng, sản phẩm dự án, kế
hoạch bài dạy, chi tiết dự án, phiếu đánh giá và chấm điểm sản phẩm, tiến trình dự
án.
2. Học sinh 
- Dụng cụ học tập cá nhân, sách giáo khoa.
● Lớp học: sĩ số từ 35 đến 40 học sinh, chia thành các nhóm, mỗi nhóm 7-8 học
sinh.

III. TIẾN TRÌNH DẠY HỌC


1. HOẠT ĐỘNG KHỞI ĐỘNG ( phút)
a) Mục tiêu:
- Tạo hứng thú cho học sinh, từng bước dẫn dắt vào bài học.
b) Nội dung: HS đọc tình huống mở đầu, suy nghĩ trả lời câu hỏi.
c) Sản phẩm: HS trả lời được câu hỏi mở đầu.
d) Tổ chức hoạt động:
Bước 1: Chuyển giao nhiệm vụ:
- GV đặt vấn đề:
Theo em, cách phát biểu đề bài của một bài tập trong tin học và trong toán học
thường khác nhau ra sao?
Bước 2: Thực hiện nhiệm vụ: HS quan sát và chú ý lắng nghe, hoàn thành yêu cầu.
Bước 3: GV gọi một số HS trả lời, HS khác nhận xét, bổ sung.
Câu trả lời dự kiến:
Bài tập trong tin học thường đặt ra để giải quyết với những bộ dữ liệu đầu vào khác
nhau. Phần lớn bài toán học có dữ liệu cụ thể để tính ra kết quả cuối cùng hoặc đưa
ra các công thức tổng quát.
Bài tập tin học thường có ngữ cảnh thực tế nhiều hơn, bài toán học thì ta giải quyết
với biến số, hình học,....
2. HOẠT ĐỘNG HÌNH THÀNH KIẾN THỨC
Hoạt động 1: Tìm hiểu quá trình giải một bài toán bằng lập trình ( phút)
a) Mục tiêu:
+ Biết máy tính tính toán nhanh.
+ Biết quan hệ giữa thông tin và dữ liệu.
b) Nội dung: HS quan sát SGK để tìm hiểu nội dung kiến thức theo yêu cầu của
GV.
c) Sản phẩm: HS hoàn thành tìm hiểu kiến thức.
d) Tổ chức hoạt động:
Hoạt động của giáo Hoạt động của học
Nội dung
viên sinh
* Bước 1: Chuyển HS thảo luận đôi,
Câu hỏi:
giao nhiệm vụ: trả lời.
GV đặt câu hỏi. Việc lập trình trên máy tính để giải quyết
*‌‌Bước‌‌2:‌‌Thực‌ một bài toán gồm những bước nào?
‌hiện‌n‌ hiệm‌‌vụ: GV:‌ HS:‌ ‌Suy‌ ‌nghĩ,
‌quan‌‌sát‌‌và‌‌trợ‌‌giúp‌ 1. QUÁ TRÌNH GIẢI MỘT BÀI TOÁN
Hoạt động của giáo Hoạt động của học
Nội dung
viên sinh
c‌ ác‌‌cặp.‌ ‌ ‌ tham‌ ‌khảo‌ ‌SGK ‌trả  BẰNG LẬP TRÌNH
*‌‌Bước‌‌3:‌‌Báo‌‌cáo,‌ ‌lời‌ ‌câu‌‌hỏi‌. Ví dụ: Bài toán Quản lí tiền điện
t‌ hảo‌‌luận:‌ ‌ ‌ Em có dữ liệu về số tiền mà gia đình
GV gọi một số HS em chi trả cho tiêu thụ điện trong mỗi tháng
+‌ ‌HS:‌ ‌Lắng‌ ‌nghe,‌ ‌g của năm vừa rồi. Hãy tính tổng số tiền điện
trả lời.
hi‌ ‌chú, gia đình em phải trả cho cả năm, tính số tiền
*‌ ‌Bước‌ ‌4:‌ ‌Kết‌ ‌luận,‌  ‌nhận‌ ‌xét,‌ ‌bổ‌ ‌sung‌ ‌c điện trung bình phải trả mỗi tháng và liệt kê
‌nhận‌ ‌định:‌ ‌GV‌ ‌chín ho‌ ‌nhau.‌ ‌ ‌ các tháng dùng nhiều điện hơn trung bình
h‌ ‌xác‌ ‌hóa‌ ‌và‌ ‌gọi‌‌ ‌học‌  cho mỗi tháng.
Dữ liệu vào từ bàn phím: gồm một dòng
‌sinh‌ ‌nhắc‌ ‌lại‌‌kiến‌
chứa 12 số nguyên, các số cách nhau bằng
t‌hức‌. dấu cách, số thứ i là tiền điện (tính theo đơn
vị nghìn đồng) phải chi trả ở tháng i, (i = 1,
2, …, 12).
Kết quả đưa ra màn hình:
 Dòng thứ nhất là tổng số tiền phải trả
trong cả năm.
 Dòng thứ hai là thông báo về số tiền trung
bình hàng tháng phải trả.
 Dòng thứ ba chứa danh sách các tháng
dùng điện cao hơn mức trung bình.
Bước 1. Xác định bài toán
Bài toán quản lí tiền điện
Cho dãy 12 số nguyên a1, a2, …, a12.
Yêu cầu:
 Tính tổng các số trong dãy.
 Tính trung bình cộng av = s/12.
 Đưa ra các vị trí i thỏa mãn điều kiên ai >
av.
Bước 2. Tìm thuật toán giải bài toán và
cách tổ chức dữ liệu
Thuật toán giải bài toán quản lí tiền điện
Bước 1: Nhập dãy số tiền t1, t2, …, t12.
Bước 2: Chuẩn bị tích lũy tổng: s = 0.
Bước 3: Tích lũy giá trị các số của dãy vào
tổng s.
Bước 4: Đưa ra giá trị s.
Hoạt động của giáo Hoạt động của học
Nội dung
viên sinh
Bước 5: Tính và đưa ra giá trị trung bình av
= s/12.
Bước 6: Duyệt tuần tự từ t1 đến t12: đưa ra i
nếu ti > av (i = 1, 2, …, 12).
Bước 3. Viết chương trình

Bước 4. Kiểm thử, chạy và hiệu chỉnh


chương trình
Với chương trình viết xong cần phải chạy
thử và kiểm tra xem chương trình có lỗi hay
không và nếu tìm thấy thì phải sửa tất cả
các lỗi tìm được.

Hoạt động 2: Tìm hiểu các bước giải bài toán bằng lập trình ( phút)
a) Mục tiêu: Nắm được các bước giải bài toán bằng lập trình
b) Nội dung: HS quan sát SGK để tìm hiểu nội dung kiến thức theo yêu cầu của
GV.
c) Sản phẩm: HS hoàn thành tìm hiểu kiến thức
d) Tổ chức hoạt động:
Hoạt động của giáo Hoạt động của học
Nội dung
viên sinh
* Bước 1: Chuyển HS thảo luận đôi,
Câu hỏi:
giao nhiệm vụ: trả lời.
GV đặt câu hỏi. Lấy các ví dụ trong Em có biết Việt Nam chính thức cung cấp
*‌‌Bước‌‌2:‌‌Thực‌ thực tế. dịch vụ Internet cho người dân vào thời
‌hiện‌‌nhiệm‌‌vụ: GV:‌ gian nào? So với thế giới là sớm hay muộn?
‌quan‌‌sát‌‌và‌‌trợ‌‌giúp‌ HS:‌ ‌Suy‌ ‌nghĩ,
‌các‌‌cặp.‌ ‌ ‌ tham‌ ‌khảo‌ ‌SGK ‌trả  2. CÁC BƯỚC GIẢI BÀI TOÁN BẰNG
*‌‌Bước‌‌3:‌‌Báo‌‌cáo,‌ ‌lời‌ ‌câu‌‌hỏi‌. LẬP TRÌNH
‌thảo‌‌luận:‌ ‌ ‌ a) Xác định bài toán
GV gọi một số HS HS:‌ L ‌ ắng‌ ‌nghe,‌ ‌ghi‌   Xác định những giá trị đã cho và các mối
quan hệ giữa chúng.
Hoạt động của giáo Hoạt động của học
Nội dung
viên sinh
trả lời. c‌ hú, b) Tìm thuật toán giải bài toán và cách tổ
‌nhận‌ ‌xét,‌ ‌bổ‌ ‌sung‌ ‌c chức dữ liệu
*‌ ‌Bước‌ ‌4:‌ ‌Kết‌ ‌luận,‌ ‌ ho‌ ‌nhau.‌ ‌ ‌  Tìm thuật toán dựa trên kết quả quan
nhận‌ ‌định:‌ ‌GV‌ ‌chín trọng của bước xác định bài toán, dựa trên
h‌ ‌xác‌ ‌hóa‌ ‌và‌ ‌gọi‌‌ ‌học‌ ‌ mối quan hệ giữa các đại lượng đã cho với
sinh‌ ‌nhắc‌ ‌lại‌‌kiến‌ những giá trị cần tìm.
‌thức‌.  Xác định các cách tổ chức dữ liệu có thể
sử dụng tương ứng với thuật toán đó.
Ví dụ: Xét bài toán Quản lí tiền điện
+ Tính tổng tiền điện 12 tháng.
+ Tính mức chi trung bình tháng.
+ So sánh tiền điện mỗi tháng với mức chi
trung bình tháng để đưa ra tháng dùng điện
nhiều.
=> Dữ liệu tiền điện hàng tháng được dùng
2 lần => cần phải lưu lại => ta thấy cấu trúc
dữ liệu thích hợp là mảng (hay danh sách
trong Python).
c) Viết chương trình
 Là mô tả thuật toán bằng ngôn ngữ lập
trình.
 Có nhiều ngôn ngữ lập trình bậc cao khác
nhau, tuy nhiên mỗi ngôn ngữ lập trình
bậc cao đều được xây dựng trên những
yếu tố cơ bản gồm:
+ Bảng chữ cái.
+ Cú pháp.
+ Ngữ nghĩa.
+ Các kiểu dữ liệu.
+ Các câu lệnh, biểu thức, thư viện các hàm
cho sẵn.
 Để máy tính có thể hiểu và thực hiện được
chương trình viết trên ngôn ngữ lập trình
bậc cao cần có công cụ dịch chương trình
sang ngôn ngữ máy.
 Có 2 chế độ dịch chương trình là thông
dịch (Interpreter) hoặc biên dịch
Hoạt động của giáo Hoạt động của học
Nội dung
viên sinh
(Compiler).
d) Kiểm thử, chạy và hiệu chỉnh chương
trình
 Viết xong chương trình cần phải tìm lỗi,
sửa lỗi, điều chỉnh lại chương trình.
Lưu ý: Dù việc kiểm thử có làm tốt đến mức
độ nào đi nữa thì trong hầu hết các trường
hợp ta chỉ có thể khẳng định là chương trình
cho kết quả đúng với nhiều bộ dữ liệu vào
khác nhau.

3. HOẠT ĐỘNG DỰ ÁN
Hoạt động 3: Dự án Quản lí tiền điện
a) Mục tiêu:
b) Nội dung:
c) Sản phẩm:
d) Tổ chức hoạt động:
Hoạt động của giáo viên Hoạt động của học Nội dung
sinh
Giáo viên đưa ra ý tưởng Học sinh lắng nghe ý Bài toán tin học thường gắn liền với
dự án. tưởng và xác định ý các bài toán thực tế trong cuộc sống
và được phát biểu dưới dạng ngôn
tưởng.
ngữ tự nhiên, gắn liền với bối cảnh
xuất hiện bài toán. Để giải bài toán
trên máy tính, ta có 5 bước: Xác định
bài toán; Tìm thuật toán giải bài toán
và cách tổ chức dữ liệu; Viết chương
trình; Kiểm thử, chạy và hiệu chỉnh
chương trình. Những nội dung liên
quan đến các bước giải bài toán trên
máy tính các em đã được học qua bài
17 và 18, chương trình Tin học lớp
10. Bây giờ các em sẽ sử dụng những
kiến thức đó để giải quyết một bài
toán cụ thể nào đó trong chương
Hoạt động của giáo viên Hoạt động của học Nội dung
sinh
trình Toán học lớp 10.

Giáo viên thực hiện cho Học sinh lập nhóm và Chia lớp thành các nhóm, mỗi nhóm
học sinh lập nhóm phân công nhóm trưởng, có 1 nhóm trưởng và 1 thư kí. Nhóm
thư ký trưởng lập bảng phân công công việc
và bảng đánh giá kết quả làm việc
cho từng thành viên trong nhóm. Thư
kí ghi nhật kí hoạt động của nhóm.

Giáo viên định hướng và Học sinh lắng nghe, chú - Nhiệm vụ: Hãy sử dụng ngôn
dẫn dắt vào nhiệm vụ cần ý nhiệm vụ cần thực ngữ lập trình Python xây dựng
giải quyết. hiện. chương trình giải quyết các bài toán
trong chương trình toán lớp 10 (Tập
1, sách giáo khoa Cánh Diều).

Giáo viên xây dựng kế HS nghiên cứu nhiệm - Phân công: Mỗi nhóm sẽ được phân
công cho 3 trong 7 bài trên.
hoạch thực hiện, nêu vụ, tiến trình thực hiện
Nhóm Nhóm Nhóm Nhóm
nhiệm vụ cụ thể và đưa dựa án, tiêu chí đánh giá 1 2 3 4
ra yêu cầu cho dự án để xác định các sản
Bất Hệ bất Bất Xét
phẩm cụ thể, công cụ sử phươn phương phương dấu
dụng dự kiến. g trình trình trình tam
bậc bậc bậc hai thức
nhất 2 nhất 2 1 ẩn. bậc
ẩn. ẩn. hai
(dựa
trên
khung
ghi
nhớ).

Chọn 2 trong 3 bài sau:


Hoạt động của giáo viên Hoạt động của học Nội dung
sinh
+ Giải tam giác (bài 1 2 3 4 5 trong
SGK).

+ Tổng hiệu vectơ.

+ Tích vô hướng của hai vectơ.

- Nhiệm vụ cụ thể:

+ Tóm tắt bài toán.

+ Mô tả thuật toán để giải bài toán.

+ Viết chương trình giải bài toán.

+ Xây dựng bộ dữ liệu để kiểm thử


và sửa lỗi chương trình.

Câu hỏi gợi ý:

+ Cần xác định yêu cầu của mỗi


bài toán (Đầu vào, đầu ra,
kiểu dữ liệu)
+ Thiết kế chương trình sao cho
hợp lí? (dễ sửa lỗi, dễ quản lí,
tiết kiệm thời gian)
+ Xây dựng hàm để dễ dàng
quản lí và sửa lỗi:
- Khởi tạo và sử dụng
hàm.
- Sử dụng hàm có sẵn
trong ngôn ngữ lập
Hoạt động của giáo viên Hoạt động của học Nội dung
sinh
trình python (math,
time, …)

Giáo viên đưa ra tiến Học sinh ghi chép lại Tiến trình thực hiện dự án.
trình thực hiện dự án. tiến trình và thực hiện.

Giáo viên đưa ra tiêu chí Học sinh lắng nghe và Tiêu chí đánh giá và thang điểm.
đánh giá và thang điểm. đặt câu hỏi nếu có.

Giáo viên cho học sinh Học sinh xem dự án. Giáo viên mở sản phẩm dự án cho
xem dự án mẫu. học sinh tham khảo.

You might also like