NỘI DUNG BÀI HỌC Hoạt đông 1: Tìm hiểu bài toán dự kiến 10 phút - Kiến thức: nhận biết công việc lặp lại nhiều lần trong 1 chương trình.. - Hình thức hoạt động: HS hoạt động cặp đôi * Bà
Trang 1
Bài 11 CẤU TRÚC LẶP
Tiết 1: CẤU TRÚC LẶP FOR…DO
I Chuẩn kiến thức, kỹ năng
1 Về kiến thức:
- Nhận biết được công việc lặp đi lặp lại 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 for-do trong Pascal
2 Kỹ năng
- Vận dụng câu lệnh for…do ở dạng tiến và dạng lùi để viết chương trình Pascal
- Kỹ năng làm việc hợp tác
3 Về tư tưởng, tình cảm
- Học sinh có hứng thú tìm hiểu kiến thức mới.
4 Phương pháp dạy học, phương tiện dạy học
- Dạy học nêu vấn đề
- 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ụ
II NỘI DUNG BÀI HỌC
Hoạt đông 1: Tìm hiểu bài toán (dự kiến 10 phút)
- Kiến thức: nhận biết công việc lặp lại nhiều lần trong 1 chương trình
- Phương pháp: nêu vấn đề
- Hình thức hoạt động: HS hoạt động cặp đôi
* Bài toán: Viết chương trình in ra màn hình 5 dòng thông báo ‘THPT Ba Ria’.
- Để in ra thông báo ta dùng câu lệnh
nào? Trong trường hợp này in xong,
xuống dòng in thông báo tiếp theo ta nên
dùng câu lệnh nào, sử dụng câu lệnh đó
bao nhiêu lần để giải quyết yêu cầu của
bài toán?
- Hãy viết chương trình pascal giải quyết
yêu cầu của bài toán trên
-> Dự kiến: HS viết chương trình sử dụng
5 câu lệnh writeln…
-> GV chốt vấn đề và nêu lên công việc
lặp trong bài toán với số lần cụ thể.
-> Vẫn yêu cầu như trên nhưng tăng số
dòng lên 100 dòng -> cho HS nhận xét về
chương trình?
-> Vẫn yêu cầu bài toán nhưng cho phép
người dùng nhập vào n là số lượng câu
thông báo, in ra màn hình n câu thông
báo trên
-> Xác định câu lệnh lặp lại trong chương
trình này? Và số lần lặp lại là bao nhiêu?
GV chốt vấn đề để HS thấy được sự cần
thiết của cấu trúc lặp trong lập trình
- Cá nhân quan sát, tìm hiểu, huy động kiến thức
cũ trả lời
- Thảo luận cặp đôi, viết chương trình vào tập
-Cá nhân quan sát trả lời
-Thảo luận cặp đôi, trả lời
Uses crt;
Begin Clrscr;
Writeln(‘THPT Ba Ria’); Writeln(‘THPT Ba Ria’); Writeln(‘THPT Ba Ria’); Writeln(‘THPT Ba Ria’); Writeln(‘THPT Ba Ria’); Readln
End.
Bài 11.Cấu trúc lặp (tiết 1)
I Cấu trúc lặp với số lần biết trước
Trang 2
Hoạt động 2: Tìm hiểu cấu trúc lặp với số lần biết trước trong pascal (dự kiến 15 phút)
- Kiến thức, kĩ năng:
+ Biết cú pháp câu lệnh for do 2 dạng (tiến, lùi) trong pascal Nhận biết được số lần lặp, công việc lặp lại trong câu lệnh
+ Vận dụng cú pháp viết được câu lệnh lặp cho bài toán nêu trên
- Phương pháp kỹ thuật: Dạy học nêu vấn đề
- Hình thức tổ chức hoạt động: Cá nhân và thảo luận nhóm
*Chia lớp thành các nhóm, mỗi nhóm 4
học sinh Phát bảng con cho các nhóm
làm việc song song
-Nhiệm vụ 1: Quan sát cú pháp và hoạt
động câu lệnh for…do dạng tiến trong
SGK, cho biết:
+ Từ khóa trong câu lệnh
+ Ràng buộc kiểu dữ liệu của <biến
đếm>, <GT1>, <GT2> là gì?
+ Nhận xét gì về giá trị của <GT1>
so với <GT2>
+ <Câu lệnh> sau từ khóa DO sẽ
được thực hiện lặp lại bao nhiêu lần?
->Dựa vào sản phẩm của học sinh giáo
viên chốt lại phần hoạt động câu lệnh và
một số lưu ý khi sử dụng câu lệnh
-NV2: Dựa vào cú pháp viết các câu
lệnh:
+ in ra màn hình 5 dòng thông báo như
trên
+ In ra màn hình 100 dòng thông báo
như trên
+ In ra màn hình n dòng thông báo như
trên
-> GV định hướng thêm: xác định GT1,
GT2 trong từng câu lệnh, <câu lệnh>
cần lặp là gì? <Biến đếm> đặt tên như
thế nào?
->GV nhận xét sản phẩm của học sinh,
chốt ví dụ; giới thiệu và định hướng cho
HS tự tìm hiểu câu lệnh lặp lùi theo các
vấn đề như câu lệnh lặp tiến
-Các nhóm nhận nhiệm
vụ và thực hiện
Dự kiến: HS hoạt động
có sản phẩm trả lời đúng
->Các nhóm báo cáo sản phẩm
-Các nhóm nhận nhiệm
vụ và thực hiện
Dự kiến: HS có thể chưa biết dùng tên bất
kì cho biến điều khiển
->Các nhóm báo cáo sản phẩm
1 Câu lênh lặp tiến 1.1 Cú pháp
For <biến đếm> := <GT1>
to <GT2> do <câu lệnh>;
1.2 Hoạt động:
SGK VD1:
For i:=1 to 5 do writeln(‘thpt ba ria’); VD2:
For i:=1 to 100 do writeln(‘thpt ba ria’); VD3:
For i:=1 to n do writeln(‘thpt ba ria’); 1.3 Lưu ý cần ghi nhớ
- Kiểu của <biến đếm>,
<GT1>, <GT2> là số nguyên hoặc kí tự
- GT1<=GT2, số lần lặp là GT2-GT1+1 lần
- Lệnh lặp sẽ kết thúc khi giá trị biến đếm vượt quá GT2
2 Câu lệnh lặp lùi:
2.1 Cú pháp:
For <biến đếm> := <GT1> downto <GT2> do <câu
lệnh>;
2.2 Hoạt động:
SGK
Ví dụ:
For i:=5 downto 1 do Writeln(‘thpt ba ria’); 2.3 Lưu ý:
- GT1>=GT2, số lần lặp là GT1-GT2+1 lần
- Lệnh lặp sẽ kết thúc khi giá trị biến đếm nhỏ hơn GT2
Trang 3
Hoạt động 3: Củng cố, luyện tập, vận dụng và mở rộng (dự kiến 20 phút)
- Kiến thức, kĩ năng:
+ Luyện tập, củng cố cú pháp câu lệnh for do 2 dạng (tiến, lùi) trong pascal Nhận biết được số lần lặp, công việc lặp lại trong câu lệnh
+ Hiểu cách hoạt động của câu lệnh lặp Vận dụng câu lệnh lặp để viết 1 chương trình cụ thể
- Phương pháp kỹ thuật: Dạy học nêu vấn đề
- Hình thức tổ chức hoạt động: thảo luận nhóm
* Chia lớp học thành các nhóm, mỗi nhóm 4 học sinh; phát bảng con, phiếu học tập cho các nhóm hoạt động song song Các nhóm phản biện khi có kết quả thảo luận
Bài tập 1 (phiếu học tập): Nêu sự giống và khác nhau giữa 2 dạng lặp tiến và lặp lùi
bằng cách hoàn thành các chỗ trống (….) trong bảng sau:
Giống nhau: Khác nhau:
<biến đếm>
- Sau khi thực hiện xong <câu lệnh>
thì biến đếm tự động………1 đơn vị
- Việc lặp sẽ dừng khi giá trị biến đếm… …….so với <GT2>
- Sau khi thực hiện xong <câu lệnh> thì biến đếm tự động………1 đơn vị
- Việc lặp sẽ dừng khi giá trị biến đếm… ……….so với <GT2>
Bài tập 2 (bảng con): Cho câu lệnh lặp sau:
For i=1 to 5 do Writeln(i, ‘THPT Ba Ria’);
- Dựa vào cú pháp câu lệnh lặp, hãy sửa lại câu lệnh trên cho đúng cú pháp
- Xác định đâu là câu lệnh thực hiện lặp lại trong câu lệnh trên; cho biết số lần thực hiện lặp lại, từ đó cho biết kết quả đoạn chương trình trên
Bài tập 3 (bảng con): Cho đoạn chương trình sau:
S:=0;
For i:=1 to 10 do
If i mod 2=0 then s:=s+i;
Writeln(s);
- Xác định câu lệnh thực hiện lặp và số lần lặp trong đoạn chương trình trên
- Cho biết kết quả in ra màn hình khi thực hiện đoạn chương trình trên
Bài tập 3 (bảng con): Viết chương trình nhập vào số nguyên n, in ra màn hình n dòng
thông báo ‘THPT ba ria’ có kèm theo chỉ số của mỗi dòng
Bài tập 4 (giao nhiệm vụ cho các nhóm tự tìm hiểu về số Amstrong và viết chương trình):
Viết chương trình in ra màn hình tất cả các số Amstrong có 3 chữ số?