Hoạt động vận dụng và tìm tòi, mở rộng: Hoạt động vận dụng được thựchiện khi tiến hành bước thứ tư của quá trình dạy học một câu lệnh điều khiển, đó là Ứng dụng câu lệnh để giải quyết bà
Trang 1Chủ đề: CÂU LỆNH LẶP TRONG LẬP TRÌNH PASCAL
Tin học lớp 11, THPT
Khái quát các hoạt động học tập: Khung công việc chung của dạy học câu
lệnh lặp trong lập trình Pascal do dựa trên quan điểm hoạt động bao gồm cáchoạt động chính như chỉ ra dưới đây Trong đó, mỗi hoạt động gắn liền với mộtbước chuẩn trong dạy học một câu lệnh điều khiển của ngôn ngữ lập trình
Hoạt động khởi động: Hoạt động này được thực hiện khi tiến hành bước thứ
nhất của quá trình dạy học một câu lệnh điều khiển, đó là Giới thiệu cấu trúc điềukhiển Tại bước này, GV đưa ra tình huống có vấn đề gợi cho HS nhu cầu muốntìm hiểu cấu trúc điều khiển và khám phá câu lệnh tương ứng để giải quyết tìnhhuống đã nêu Vấn đề được nêu ra nên gắn với thực tế gần gũi xung quanh HShoặc thực tế đời sống xã hội Vấn đề được nêu ra nếu thuận lợi sẽ được liên hệvới nội dung giáo dục để HS thấy được ý nghĩa, tác dụng của bài học và yêuthích môn học hơn
Hoạt động hình thành kiến thức và luyện tập: Hai hoạt động này được thực hiện khi tiến hành bước thứ hai và thứ ba của quá trình dạy học một câu
lệnh điều khiển, đó là Giới thiệu câu lệnh và Củng cố câu lệnh
Trong bước giới thiệu câu lệnh, GV dẫn dắt HS khám phá cú pháp và hoạt
động của câu lệnh Có hai cách để thực hiện điều này Cách thứ nhất: GV giớithiệu cú pháp và hoạt động của câu lệnh, rồi lấy ví dụ minh họa Tiếp theo, GVnêu ví dụ khác hoặc đề nghị HS nêu ví dụ khác và yêu cầu HS giải thích hoạtđộng của câu lệnh trong ví dụ đó Cách thứ hai: GV lấy một số ví dụ hoặc tìnhhuống cụ thể mà ở đó câu lệnh được sử dụng Tiếp theo GV đề nghị HS khái quátthành cú pháp tổng quát và nêu hoạt động của câu lệnh Cách thứ hai phát huyđược tính tích cực học tập của HS
Trong bước củng cố câu lệnh, GV tổ chức cho HS hai hoạt động chủ đạo đó
là nhận dạng và thể hiện câu lệnh Hoạt động nhận dạng giúp HS viết đúng câulệnh, tránh được các sai sót mà HS thường mắc phải ghi viết câu lệnh Hoạt độngthể hiện rèn luyện cho HS cách áp dụng trực tiếp câu lệnh để giải quyết một yêucầu đơn giản; hoặc vận dụng câu lệnh để giải quyết các yêu cầu phức tạp hơn,đòi nhiều thao tác tư duy hơn
Trang 2Hoạt động vận dụng và tìm tòi, mở rộng: Hoạt động vận dụng được thực
hiện khi tiến hành bước thứ tư của quá trình dạy học một câu lệnh điều khiển, đó
là Ứng dụng câu lệnh để giải quyết bài toán Tại bước này, GV đưa ra một số bàitoán đơn giản và gần gũi với HS, rồi hướng dẫn HS sử dụng kết hợp câu lệnhvừa học với những câu lệnh khác để cài đặt thuật toán giải quyết bài toán
Hoạt động tìm tòi, mở rộng dành cho đối tượng HS khá và có thể không thựchiện đối với lớp mà trình độ chung của HS là thấp Có hai cách để tiến hành hoạtđộng này Cách thứ nhất là tiến hành như một bước độc lập (bước thứ năm - mởrộng, đào sâu - của quá trình dạy học một câu lệnh điều khiển); Cách thứ hai là
thực hiện lồng ghép như một pha phía sau (phrase of deep learning) ngay trong
hoạt động vận dụng Nội dung của hoạt động tìm tòi, mở rộng là những bài toánđược GV gợi ra nhằm hướng dẫn HS vận dụng kết hợp các câu lệnh điều khiểnvới nhau để giải quyết các vấn đề phức tạp hoặc các vấn đề của liên môn
Căn cứ vào chuẩn kiến thức, kĩ năng của chương trình, nội dung của sáchgiáo khoa của môn Tin học tổ/nhóm chuyên môn xác định các nội dung kiến thứcliên quan với nhau được thể hiện ở một số bài/tiết hiện hành (thường trong cùngmột chương), từ đó xây dựng thành một bài học theo chủ đề chung trong mônhọc Trường hợp có những nội dung kiến thức liên quan đến nhiều môn học, các
tổ chuyên môn liên quan cùng nhau lựa chọn nội dung để thống nhất xây dựngmột bài học theo chủ đề liên môn
Bước 2 Thiết kế nội dung bài học
Niklaus Wirth - nhà khoa học máy tính nổi tiếng người Thụy Sĩ, tác giả của
bộ sách “Nghệ thuật lập trình” đã viết: “Thuật toán + cấu trúc dữ liệu = chươngtrình máy tính” Trong đó, có thể coi “thuật toán” được xây dựng bởi “các cấu trúcđiều khiển” Các cấu trúc điều khiển trong một ngôn ngữ lập trình cụ thể được thểhiện bằng “các câu lệnh điều khiển” Sử dụng các câu lệnh điều khiển, có thể tạo racác chương trình máy tính để giải quyết hầu hết những bài toán của khoa học vàthực tiễn
Ngôn ngữ lập trình Pascal bao gồm các câu lệnh điều khiển sau đây:
- Câu lệnh quyết định (decision statements) if-then và if-then-else
- Câu lệnh ghép hay câu lệnh hợp thành (block statement) begin-end
- Câu lệnh lặp (loop statements) gồm ba câu lệnh lặp sau:
Trang 3- Lặp với số lần biết trước for-to-do và for-downto-do
- Lặp với số lần không biết trước, kiểm tra điều kiện trước while-do
- Lặp với số lần không biết trước, kiểm tra điều kiện sau repeat-until
Trừ câu lệnh cuối cùng, các câu lệnh còn lại trên đây được giới thiệu trongchương III, SGK Tin học 11 hiện hành Như vậy, chủ đề bài học tập trung vào tìmhiểu cấu trúc và câu lệnh lặp, được dạy sau cấu trúc và câu lệnh rẽ nhánh Do vậychủ đề học tập có thể được thiết kế với các nội dung cụ thể như sau:
Thứ tự nội dung Nội dung kiến thức Số tiết
Nội dung 1 Cấu trúc lặp
2Nội dung 2 Câu lệnh lặp for-do
Nội dung 3 Câu lệnh lặp while-do 1
Bài tập, thực hành và ôn tập 3
Bước 3 Xác định mục tiêu đầu ra cho bài học
Chủ đề và nội dung học tập trên đây dựa trên chuẩn kiến thức kĩ năng sau:
Kiến thức
Hiểu nhu cầu của cấu trúc lặp trong biểu diễn thuật toán
Hiểu cấu trúc lặp kiểm tra điều kiện trước, cấu trúc lặp với số lần định trướcBiết cách vận dụng đúng đắn từng loại cấu trúc lặp vào tính huống cụ thểBước đầu hình thành được khái niệm về lập trình có cấu trúc
Kĩ năng
Mô tả được thuật toán của một số bài toán đơn giản có sử dụng lệnh lặp.Viết đúng các lệnh lặp kiểm tra điều kiện trước, lệnh lặp với số lần định trước
Viết được thuật toán của một số bài toán đơn giản
Bước 4 Mô tả mức độ yêu cầu kiểm tra, đánh giá
Bảng dưới đây xác định và mô tả 4 mức độ yêu cầu (nhận biết, thông hiểu,vận dụng, vận dụng cao) của mỗi loại câu hỏi/bài tập có thể sử dụng để kiểm
Trang 4tra, đánh giá năng lực và phẩm chất của học sinh trong dạy học chủ đề bài học
“Câu lệnh trong lập trình Pascal”
Trang 5BẢNG THAM CHIẾU CÁC MỨC YÊU CẦU CẦN ĐẠT
CỦA CÂU HỎI, BÀI TẬP KIỂM TRA, ĐÁNH GIÁ
Nội dung Câu
hỏi/bài tập
Nhận biết (Mô tả yêu cầu cần đạt)
Thông hiểu (Mô tả yêu cầu cần đạt)
Vận dụng thấp (Mô tả yêu cầu cần đạt)
Vận dụng cao (Mô tả yêu cầu cần đạt)
1 Cấu trúc
lặp
Câu hỏi/
bài tập định tính (Trắc nghiệm,
Tự luận)
HS chỉ ra được trong một tình huống cụ thể
có cấu trúc lặp hay không và
nó được biểu diễn đúng không.
HS giải thích được ý nghĩa và hoạt động của một cấu trúc lặp trong một tình huống cho trước.
HS lấy được ví
dụ sử dụng cấu trúc lặp để giải quyết một tình huống cụ thể được đặt ra.
2 Câu lệnh
lặp for-do
Câu hỏi/
bài tập định tính (Trắc nghiệm,
Tự luận)
HS mô tả được
cú pháp và ngữ nghĩa của câu lệnh for-do (2 dạng for-to-do
và do.)
for-downto-HS giải thích được hoạt động của câu lệnh for-
do (hai dạng) trong một tình huống cụ thể
Bài tập định lượng (Trắc nghiệm,
Tự luận)
HS nhận ra được một câu lệnh for-do (2 dạng) viết đúng hay sai trong một tình huống cụ thể.
HS giải thích được hoạt động của một đoạn chương trình cụ thể chứa câu lệnh for-do (một trong hai dạng).
HS sử dụng câu lệnh for-do (một trong hai dạng) để viết được một đoạn chương trình thực hiện một tình huống quen thuộc.
HS sử dụng câu lệnh for-do (một trong hai dạng)
để viết được một đoạn chương trình thực hiện một tình huống mới.
Bài tập thực hành
HS sửa được lỗi cú pháp của câu lệnh for-do (2 dạng) trong chương trình có lỗi.
HS sửa được lỗi ngữ nghĩa của câu lệnh for-do (2 dạng) trong chương trình có lỗi.
HS sử dụng câu lệnh for-do
và các câu lệnh khác để viết được chương trình giải quyết vấn đề trong tình huống quen thuộc.
HS sử dụng câu lệnh for-do và các câu lệnh khác để viết được chương trình giải quyết vấn đề trong tình huống mới.
Tự luận)
HS mô tả được
cú pháp và ngữ nghĩa của câu lệnh while-do.
HS giải thích được hoạt động của câu lệnh while-do trong một tình huống
cụ thể
Trang 6Nội dung Câu
hỏi/bài tập
Nhận biết (Mô tả yêu cầu cần đạt)
Thông hiểu (Mô tả yêu cầu cần đạt)
Vận dụng thấp (Mô tả yêu cầu cần đạt)
Vận dụng cao (Mô tả yêu cầu cần đạt)
Bài tập định lượng (Trắc nghiệm,
Tự luận)
HS nhận ra được một câu lệnh while-do viết đúng hay sai trong một tình huống cụ thể.
HS giải thích được hoạt động của một đoạn chương trình cụ thể chứa câu lệnh while-do.
HS sử dụng câu lệnh while-
do và các câu lệnh khác để viết được chương trình giải quyết vấn
đề trong tình huống quen thuộc.
HS sử dụng câu lệnh while-do và các câu lệnh khác để viết được chương trình giải quyết vấn đề trong tình huống mới.
Bài tập thực hành
HS sửa được lỗi cú pháp của câu lệnh while-
do trong chương trình
có lỗi.
HS sửa được lỗi ngữ nghĩa của câu lệnh while-
do trong chương trình có lỗi.
HS sử dụng câu lệnh while-
do và các câu lệnh khác để viết được chương trình giải quyết vấn
đề trong tình huống quen thuộc.
HS sử dụng câu lệnh while-do và các câu lệnh khác để viết được chương trình giải quyết vấn đề trong tình huống mới.
MÃ CÂU HỎI CỦA BẢNG THAM CHIẾU KIỂM TRA, ĐÁNH GIÁ
Nội dung
Câu hỏi/bài tập
Nhận biết (Mô tả yêu cầu cần đạt)
Thông hiểu (Mô tả yêu cầu cần đạt)
Vận dụng thấp (Mô tả yêu cầu cần đạt)
Vận dụng cao (Mô tả yêu cầu cần đạt)
1 Cấu trúc
lặp
Bài tập định lượng
ND1.ĐL.NB.* ND1.ĐL.TH.* ND1.ĐL.VDT.* ND1.ĐL.VDC.*
Bài tập thực Hành
ND2.ĐL.NB.* ND2.ĐL.TH.* ND2.ĐL.VDT.* ND2.ĐL.VDC.*
Bài tập thực Hành
ND2.TH.NB.* ND2.ĐL.TH.* ND2.ĐL.VDT.* ND2.ĐL.VDC.*
Trang 73 Câu lệnh
lặp while-do Câu hỏi/ bài tập định tính ND3.ĐT.NB.* ND3.ĐT.TH.*
Bài tập định lượng
ND3.ĐL.NB.* ND3.ĐL.TH.* ND3.ĐL.VDT.* ND3.ĐL.VDC.*
Bài tập thực hành
ND3.TH.NB.* ND3.TH.TH.* ND3.TH.VDT.* ND3.TH.VDT.*
Bước 5 Biên soạn các câu hỏi/bài tập/phiếu học tập
Căn cứ vào nội dung của chủ đề đã lựa chọn, dựa trên trình độ hiện có
của học sinh, các mục tiêu năng lực được xác định để biên soạn các phiếu
học tập, câu hỏi/bài tập cụ thể theo các mức độ yêu cầu đã mô tả để sử dụng
trong quá trình tổ chức các hoạt động dạy học và kiểm tra, đánh giá, luyện
tập theo bài học đã xây dựng Các câu hỏi bài tập cho 3 nội dung trên đây
của chủ đề học tập khá dài nên sẽ được trình bày ở sau bước 6
Bước 6 Thiết kế tiến trình dạy học
Căn cứ vào các hoạt động học tập của HS được giới thiệu trong phần
“Xác định chủ đề học tập” và căn cứ vào các nội dung học tập được giới
thiệu trong phần “Thiết kế nội dung chủ đề”, tiến trình dạy học chủ đề “Các
câu lệnh lặp trong lập trình Pascal” được mô tra như bảng dưới đây:
Trang 86 Ôn tập (01 tiết)
Chú ý: Các hoạt động vận dụng và tìm tòi mở rộng có thể không thực hiện hết các
nội dung được nêu trong bài học, và có thể hướng dẫn HS học ở nhà
Về phương pháp dạy học
Các bước dạy học một câu lệnh của ngôn ngữ lập trình được thực hiện dựa trên
quan điểm hoạt động như sau:
hoạt động hình thành kiến thức (giới thiệu các câu lệnh điều khiển), GV có thể tiếp
cận dạy học dựa trên thuyết kiến tạo bằng cách đi từ các ví dụ cụ thể để HS khái
quát thành cú pháp và ngữ nghĩa của câu lệnh
hoạt động luyện tập và vận dụng (củng cố câu lệnh), GV có thể tiếp cận dạy học theođịnh hướng tích hợp bằng cách thay các ví dụ trong SGK hiện hành bằng các bài toáncủa các môn học khác, đặc biệt là Toán, Vật lí, và Hóa học ở chương trình các lớpdưới hoặc của học kì 1, lớp 11 Ngoài ra, GV có thể sử dụng phương pháp “dạy họcphát hiện và giải quyết vấn đề” (problem posing and problem solving) để dẫn dắt HStìm tòi, khám phá cách giải quyết các bài toán phù hợp được GV nêu ra
Các tiết bài tập, thực hành và ôn tập, GV có thể tiến hành các PPDH tích cực khác
như: dạy học hợp tác (cooperation learning); dạy học dựa trên tình huống (situationbased learning); hoặc dạy học dựa trên trường hợp (case based learning)
Nội dung tiếp theo trong tài liệu này sẽ chỉ giới thiệu minh họa tiến trình dạy học của một tiết học nhưng có với nội dung trọn vẹn một bài học
6.1 Tiến trình dạy học bài 1: CÂU LỆNH LẶP FOR-DO
Tiết 1: Hoạt động khởi động và Hoạt động hình thành kiến thức và luyện tập
Tiết 2: Hoạt động vận dụng và Hoạt động tìm tòi, mở rộng
Chuẩn kiến thức, kỹ năng cần đạt của bài 2
Về kiến thức
Học sinh cần:
Hiểu được vai trò của cấu trúc lặp trong biểu diễn thuật toán;
Hiểu cấu trúc lặp với số lần biết trước;
Hiểu được câu lệnh lặp với số lần biết trước for-do trong Pascal
Về kỹ năng
Trang 9Viết đúng các câu lệnh lặp với số lần biết trước for-do ở dạng tiến và dạng lùi (trong ngôn ngữ Pascal);
Về tư tưởng, tình cảm
Học sinh hiểu bài và hứng thú với bài học
Học sinh ngày càng say mê lập trình hơn
Phương pháp dạy học, phương tiện dạy học chủ yếu
Dạy học theo quan điểm hoạt động
Sử dụng máy chiếu, slide bài giảng, SGK, máy tính cài đặt môi trường lập trình để minh họa, giấy khổ lớn và các bảng phụ
A KHỞI ĐỘNG
Hoạt động 1: Kiểm tra bài cũ
Mục tiêu: Kiểm tra kiến thức của bài học trước về câu lệnh rẽ nhánh (câu lệnh if-then và if-then-else)
Phương pháp/Kĩ thuật: Đàm thoại, vấn đáp
Hình thức tổ chức hoạt động: Cá nhân và thảo luận nhóm
Phương tiện dạy học: SGK, máy tính, máy chiếu
Sản phẩm: Học sinh phân tích được các đoạn chương sử dụng cấu trúc rẽ nhánh để phát hiện đoạn chương trình sai (mức độ vận dụng cao)
Nội dung hoạt động
Để tính max là giá trị nhỏ nhất trong ba số a, b, c có hai bạn học sinh đã viết hai đoạn trình sau đây:
Đoạn trình 1:
max := a;
if max < b then max := b;
if max < c then max := c;
Đoạn trình 2:
if a < b then max := b
else
Trang 10max := a;
if max < c then max:=c;
end;
Hãy cho biết đoạn trình nào sai? Hãy giải thích?
Hoạt động 2: Tìm hiểu cấu trúc lặp
Mục tiêu: HS hiểu được nhu cầu sử dụng và ý nghĩa của cấu trúc lặp HS hiểuhai loại cấu trúc lặp: lặp với số lần biết trước và lặp với số lần không biết trước
Phương pháp/Kĩ thuật: Dạy học nêu vấn đề (learrning problem posing)
Hình thức tổ chức hoạt động: Cá nhân và thảo luận nhóm
Phương tiện dạy học: SGK, máy tính, máy chiếu, các chương trình nguồn
mẫu
Sản phẩm: HS được giao nhiệm vụ tìm hiểu tình huống phát sinh cấu trúc lặpthông qua bài toán tính tổng một dãy số với hai trường hợp: (1) Biết trước số số hạngcủa dãy; (2) không biết trước số số hạng của dãy Từ đó các em trả lời được phiếu câuhỏi được GV nêu ra GV sẽ chính xác lại các câu trả lời của các HS (cá nhân hoặcnhóm) để các em hiểu và phân biệt được hai loại cấu trúc lặp Chú ý, chỉ
cuối hoạt động này, GV mới liên hệ, đề cập ngay đến câu lệnh lặp trong Pascal
Trang 11Nội dung hoạt động
Cấu trúc rẽ nhánh mà ta đã được học ở bài trước, cùng với cấu trúc tuần tự, chưa
đủ để biểu thị được tất cả các thuật toán mà ta đã được giới thiệu từ lớp 10 Để biểuthị được tất cả các thuật toán, cần có thêm một cấu trúc điều khiển nữa, đó là cáccấu trúc lặp Để tìm hiểu về các cấu trúc này, ta hãy xem xét hai bài toán sau đây
và trả lời câu hỏi cho bên dưới:
Bài toán 1: Tính và đưa ra màn hình tổng sau, với a > 2:
PHIẾU CÂU HỎI
Để tính tổng S trong hai bài toán trên đây:
Ban đầu ta cần khởi tạo S bằng biểu thức nào?
Tiếp theo, cần cộng S với số hạng có dạng như thế nào? (Với N lần lượt nhận các
giá trị bao nhiêu?)
Xét quá trình cộng dần S với số hạng ở dạng tổng quát như đã tìm được ở câu 2 trên đây:
Đối với bài toán 1, việc cộng đó lặp bao nhiêu lần?
Đối với bài toán 2, việc cộng đó thực hiện mãi mãi không?
Giáo viên chính xác câu trả lời của HS như sau:
Ban đầu, S được khởi gán giá trị 1/a
Tiếp theo, cộng vào tổng S một giá trị 1/(a+N) với N = 1, 2, 3,
Quá trình cộng dần S với số hạng ở dạng tổng quát 1/(a+N) được lặp lại một số lần, cụ thể như sau:
Đối với bài toán 1, số lần lặp biết trước là 100 và việc cộng vào tổng S sẽ kết thúc sau khi thực hiện việc cộng 100 lần, tức là khi N = 100
Trang 12Đối với bài toán 2, số lần lặp không biết trước, nhưng việc cộng vào tổng S sẽ kết thúc khi điều kiện (*) được thỏa mãn.
Giáo viên nhận xét
Tồn tại các thuật toán mà có những thao tác phải được thực hiện lặp đi lặp lại một
số hữu hạn lần;
Cấu trúc lặp mô tả thao tác lặp được chia làm hai loại: lặp với số lần biết trước (ví
dụ bài toán 1) và lặp với số lần không biết trước (ví dụ bài toán 2)
HÌNH THÀNH KIẾN THỨC VÀ LUYỆN TẬP
Hoạt động 3: Tìm hiểu thuật toán giải bài toán 1
Mục tiêu: HS thực hiện được một phần thuật toán thể hiện cấu trúc lặp với
số lần biết trước
Phương pháp/Kĩ thuật: Rèn tư duy phân tích và so sánh tương tự
Hình thức tổ chức hoạt động: Cá nhân và thảo luận nhóm
Phương tiện dạy học: SGK, máy tính, máy chiếu
Sản phẩm: Học sinh tìm hiểu thuật toán thứ nhất tính tổng dãy số (biết trước
số số hạng) để từ đó hoàn chỉnh thuật toán thứ hai cũng đạt được mục tiêu nhưthuật toán thứ nhất (mức độ vận dụng thấp)
Nội dung hoạt động
Ta gọi Tong_1a là thuật toán tính tổng S theo yêu cầu bài toán 1 Dưới đây là mô
tả thuật toán:
Thuật toán Tong_1a
Bước 1: S ¬ 1/a; N ¬ 0;
Bước 2: N ¬ N + 1;
Bước 3: Nếu N > 100 thì chuyển đến bước 5;
Bước 4: S ¬ S + 1/(a+N); rồi quay lại bước 2;
Bước 5: Đưa S ra màn hình, rồi kết thúc.
Ta cũng có thể mô tả thuật toán tính tổng S theo yêu cầu bài toán 1 bằng cách thứ
hai Ta gọi thuật toán cách hai này là Tong_1b Hãy hoàn thành thuật toán này
Thuật toán Tong_1b
Trang 13Bước 1: S ¬ …… ; N ¬ 101;
Bước 2: N ¬ N - 1;
Bước 3: Nếu … thì chuyển đến bước 5;
Bước 4: S ¬ S + …….; rồi quay lại bước ……;
Bước 5: Đưa S ra màn hình, rồi kết thúc.
Hoạt động 4: Tìm hiểu câu lệnh lặp for-do
Mục tiêu: HS nắm được câu lệnh lặp for-do ở mức độ biết
Phương pháp/Kĩ thuật: Thuyết trình
Hình thức tổ chức hoạt động: Cả lớp
Phương tiện dạy học: SGK, máy tính, máy chiếu và chương trình mẫu
Sản phẩm: Học sinh được giao nhiệm vụ tìm hiểu câu lệnh lặp for-do từ đó phát biểu được ý nghĩa, hoạt động của câu lệnh lặp này (mức độ biết)
Nội dung hoạt động
Để giải bài toán 1 theo thuật toán Tong_1a hoặc Tong_1b, ta có thể sử dụng câu lệnh lặp for-do, là câu lệnh lặp với số lần biết trước Có hai dạng lặp for-do như
<biến đếm> là biến đơn thường có kiểu nguyên; không được thay đổi giá trị
của biến đếm sau từ khóa do.
<giá trị đầu> và <giá trị cuối> là các biểu thức cùng kiểu với biến đếm;Trong dạng lặp tiến, giá trị đầu không lớn hơn giá trị cuối; Trong dạng lặp lùi, giátrị đầu không nhỏ hơn giá trị cuối;
Hoạt động của câu lệnh lặp for-do:
Ở dạng lặp tiến: với biến đếm lần lượt tăng dần từ giá trị đầu đến giá trị cuối, câu
lệnh viết sau từ khóa do sẽ được thực hiện lặp lại một lần.
Trang 14Ở dạng lặp lùi: với biến đếm lần lượt giảm dần từ giá trị cuối đến giá trị đầu, câu
lệnh viết sau từ khóa do sẽ được thực hiện lặp lại một lần.
Hoạt động 5: Trả lời câu hỏi về câu lệnh lặp for-do
Mục tiêu: HS nắm được câu lệnh lặp for-do ở mức độ hiểu
Phương pháp/Kĩ thuật: Rèn luyện tư duy phân tích, tổng hợp
Hình thức tổ chức hoạt động: Cá nhân và thảo luận nhóm
(4) Phương tiện dạy học: SGK, máy tính, máy chiếu và chương trình minh họa
Sản phẩm: Học sinh trả lời được các phiếu câu hỏi về câu lệnh lặp for-do từ
đó hiểu rõ được ý nghĩa, hoạt động của câu lệnh lặp này (mức độ hiểu)
Nội dung hoạt động
PHIẾU CÂU HỎI 1
Hãy giải thích hoạt động của các câu lệnh sau đây với i là biến kiểu byte:
for i:= 1 to 10 do <câu lệnh>;
for i:= 10 downto 1 do <câu lệnh>;
Hãy so sánh hoạt động của hai câu lệnh sau đây với c là biến kiểu char
for c := 'a' to 'j' do <câu lệnh>;
for c := 'j' downto 'a' do <câu lệnh>;
Hãy chọn câu khẳng định đúng trong các câu sau:
Trong câu lệnh lặp for-do tổng quát biến đếm là biến phải có giá trị kiểu số;
Giá trị của biến đếm có thể được sử dụng trong câu lệnh trong thân vòng lặp;
Nếu giá trị đầu bằng giá trị cuối thì câu lệnh thân vòng lặp không được thực
hiện lần nào;
Giá trị đầu và giá trị cuối có thể khác kiểu dữ liệu với biến đếm.
Đoạn chương trình nàu dưới đây tính S là tổng của N số tự nhiên đầu
tiên:
S:=0; for i=1 to N do S := S + i;
Trang 15S:=0; for i:=1 to N do S = S + i;
S:=0; for i:=1 downto N do S := S + i;
D S:=0; for i:=1 to N do S := S + i;
C VẬN DỤNG
Hoạt động 6: Lập trình giải bài toán 1
(1) Mục tiêu: HS nhận dạng được câu lặp for-do trong một chương trình cụ thể Hơn nữa, HS hiểu được thuật toán được cài đặt như thế nào thông qua câu lệnh
này (mức độ vận dụng thấp)
(2) Phương pháp/Kĩ thuật: Rèn luyện tư duy phân tích, tổng hợp
(3) Hình thức tổ chức hoạt động: Cá nhân và thảo luận nhóm
(4) Phương tiện dạy học: SGK, máy tính, máy chiếu và chương trình minh họa
(5) Sản phẩm: Học sinh trả lời được phiếu câu hỏi về chương trình vận dụng câu lệnh lặp for-do để giải quyết bài toán (mức độ vận dụng thấp)
Nội dung hoạt động
Hãy tìm hiểu chương trình dưới đây để giải bài toán 1 theo thuật toán Tong_1a:
Trang 16#14 end.
PHIẾU CÂU HỎI
(1) Chương trình Tong_1a có thể chia thành những phần nào (từ dòng lệnh nào đến
dòng lệnh nào)? Nhiệm vụ/công việc của từng phần đó là gì?
(2) Chương trình Tong_1a đã sử dụng câu lệnh for-do dạng lặp tiến hay lùi?
(3) Để có chương trình thể hiện thuật toán Tong_1b ta sẽ sử dụng câu lệnh for-do
dạng lùi Khi đó, cần sửa lại các dòng lệnh nào? Hãy viết các dòng lệnh đó?
Hoạt động 7: Lập trình giải bài toán tính tổng các số chia hết cho 3 hoặc 5 trong phạm vi từ M đến N
(1) Mục tiêu: HS thể hiện được câu lặp for-do trong một tình huống cụ thể.
Nói cách khác, HS sử dụng được câu lệnh for-do để cài đặt thuật toán giải bài toánmới (vận dụng mức cao)
(2) Phương pháp/Kĩ thuật: Rèn luyện tư duy phân tích, qui lạ về quen
(3) Hình thức tổ chức hoạt động: Cá nhân và thảo luận nhóm
(4) Phương tiện dạy học: SGK, máy tính, máy chiếu và chương trình minh họa
(5) Sản phẩm: Học sinh thực hiện yêu cầu được nêu trong phiếu câu hỏi về vận dụng câu lệnh lặp for-do để giải quyết bài toán mới (mức độ vận dụng cao)
Trang 17Nội dung hoạt động
PHIẾU CÂU HỎI
Bài toán: Viết chương trình thực hiện việc hai số nguyên dương M và N (M<N),
tính và đưa lên màn hình tổng các số chia hết cho 3 hoặc 5 trong phạm vi từ M đếnN
Hãy đọc gợi ý hoặc câu hỏi gợi ý ở cột bên trái để hoàn thành chương trình giải bàitoán đã nêu ở cột bên phải
đếm i lần lượt tăng dần từ giá trị
đầu M đến giá trị cuối N, với mỗi
giá trị của i, ta dùng phép toán mod
để tiến hành kiểm tra xem nếu i chia
hết cho 3 hoặc i chia hết cho 5 thì
thực hiện câu lệnh cộng i cho tổng
T Ban đầu T được khởi tạo bằng 0
Hãy lệnh in ra màn hình giá trị của T
Trang 18C TÌM TÒI, MỞ RỘNG
Hoạt động 8: Tìm hiểu các đoạn chương trình sử dụng câu lệnh for-do
(1) Mục tiêu: HS thực hiện được các hoạt động nhận dạng và thể hiện câu
lặp for-do trong các tình huống cụ thể
(2) Phương pháp/Kĩ thuật: Đàm thoại, phát hiện
(3) Hình thức tổ chức hoạt động: Cá nhân và thảo luận nhóm
(4) Phương tiện dạy học: SGK, máy tính, máy chiếu và bảng phụ
(5) Sản phẩm: Học sinh trả lời được các câu hỏi về vận dụng câu lệnh lặp for-do để giải quyết các tình huống cụ thể (mức độ vận dụng thấp và cao)
Nội dung hoạt động
Câu 1 Cho p, q và i là các biến nguyên Khi thực hiện đoạn chương trình sau đây:
C S := 0; for i := 9 downto 1 do S := S + i*i;
D S := 5; for i:=9 downto 3 do S := S + sqr(i);
Hoạt động 9: Tìm hiểu câu lệnh for-do lồng nhau
(1) Mục tiêu: HS hiểu được câu lệnh for-do lồng nhau
(2) Phương pháp/Kĩ thuật: Đàm thoại, phát hiện
Trang 19(3) Hình thức tổ chức hoạt động: Thảo luận nhóm.
(4) Phương tiện dạy học: SGK, máy tính, máy chiếu và bảng phụ
(5) Sản phẩm: Dưới sự gợi ý giảng giải của GV, học sinh viết được đoạnchương trình sử dụng câu lệnh for-do lồng nhau để giải quyết được một bài toánđơn giản (mức độ vận dụng thấp và cao)
Nội dung hoạt động
Hình bên là đoạn chương trình sử
dụng câu lệnh lặp for-do lồng nhau để
giải bài toán “Vừa gà vừa chó, bó lại
cho tròn, 36 con, 100 chân chẵn Hỏi
có bao nhiêu gà, bao nhiêu chó?”
for c := 1 to 36 dofor g := 0 to 36 – c do
if c*4 + g *2 = 100 thenwriteln(‘so ga: ’,g, ‘so cho: ’,c);
Trang 20Hãy viết đoạn chương trình giải bài toán “Trăm trâu trăm cỏ, trâu đứng ăn năm, trâu nằm ăn ba, lụ khụ trâu già 3 con một bó Hỏi số trâu mỗi loại?”.
D Hướng dẫn học ở nhà
- Ôn lại bài học hôm nay;
- Chuẩn bị trước cho tiết thứ ba của bài học này: mục 3: Lặp với số lần chưa biết trước và câu lệnh while-do
6.2 Tiến trình dạy học bài 3: CÂU LỆNH LẶP WHILE-DO Chuẩn kiến thức,
kỹ năng cần đạt của bài 2
Về kiến thức
Học sinh cần:
- Hiểu được vai trò của cấu trúc lặp trong biểu diễn thuật toán;
- Hiểu cấu trúc lặp với số lần không biết trước, kiểm tra điều kiện trước;
- Hiểu được câu lệnh lặp while-do trong Pascal
- Bước đầu biết vận dụng đúng đắn từng loại cấu trúc lặp vào tình huống cụ thể
- Học sinh hiểu bài và hứng thú với bài học
- Học sinh ngày càng say mê lập trình hơn, đặc biệt là sau khi đã biết tất
cả các các cấu trúc điều khiển cơ bản trong chương trình
Phương pháp dạy học, phương tiện dạy học chủ yếu
- Dạy học theo quản điểm hoạt động
- Sử dụng máy chiếu, slide bài giảng, SGK, máy tính cài đặt môi trường lập trình
để minh họa, giấy khổ lớn và các bảng phụ
A KHỞI ĐỘNG