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 với số lần biết trước; Viết được thuật toỏn của một số bài toỏn đơn giản 2.. Kỹ năng Biết diễn đạt
Trang 1Tiết PPCT: 12 Ngày soạn:………
Ngày giảng:………
Đ10: Cấu trúc lặp (tiếp)
I Mục tiêu:
1 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 với số lần biết trước;
Viết được thuật toỏn của một số bài toỏn đơn giản
2 Kỹ năng
Biết diễn đạt đỳng cõu lệnh lặp với số lần lặp biết trước;
Bước đầu cú khả năng phõn tớch bài toỏn đơn giản để ỏp dụng cấu trỳc lặp;
Biết tạo cõu lệnh ghộp khi cần thiết
3 thái độ:
Tiếp tục tạo sự ham muốn giải cỏc bài tập bằng lập trỡnh trờn mỏy tớnh;
Rốn luyện phẩm chất cần thiết của người lập trỡnh như: xem xột giải quyết vấn đề một cỏch cẩn thận, chu đỏo, cú sỏng tạo, khụng thỏa món kết quả ban đầu đạt được
II Đồ dùng dạy học
1.Chuẩn bị của giáo viên
SGK
2 Chuẩn bị của học sinh:
SGK
III Hoạt động dạy học
1 ổn định lớp
kiểm tra sĩ số:
2 Kiểm tra bài cũ:
Câu hỏi: Viết cỳ phỏp lệnh for – do dạng tiến và dạng lựi và nờu hoạt động
của lệnh?
HS trả lời
GV: Nhận xét và cho điểm
3 Tiến trình tiết dạy
Hoạt động của giáo viên Hoạt động của học sinh
Hoạt động 1: Ví dụ 1
Nờu vớ dụ 1, phõn tớch bài toỏn
dựa vào thuật toỏn Tong_1a
trong sỏch giỏo khoa trang 43
(?)Cần khai bỏo những biến
nào? Kiểu dữ liệu của biến là gỡ?
Vỡ sao?
TL: Biến a, N kiểu nguyên (đầu bài ra) Biến S kiểu thực do trong tính S có chứa phép chia
TL: Biến a TL: 2 học sinh lên bảng viết chơng trình cho 2 dạng tiến và lùi
TL: Câu lệnh lặp với số lần biết trớc
Trang 2(?) Đối với bài toán này ta cần
nhập giá trị cho những biến nào
(?) Để tính đợc S ta dùng câu
lệnh gì
(?) Biến N có tác dụng gì trong
bài toán
(?) bài toán cần đa ra kết quả gì
Từ thuật toán giờ trớc đã tìm hiểu
yêu cầu 2 học sinh lên bảng viết
ch-ơng trình giải bài toán 1 với 2 dạng
tiến và lùi
Yêu cầu 1 vài học sinh khác nhận
xét
GV nhận xét và chốt lại chơng
trình đúng
NX: Đối với 2 chơng trình trên
thì chơng trình cơ bản là giống
nhau chỉ khác 1 câu lệnh đó là
câu lệnh FOR- DO dạng tiến hay
lùi Nh vậy để viết chơng trình
giải 1 bài toán có sử dụng cấu
trúc lặp ta có thể viết theo 1 trong
2 cách là dạng tiến hoặc dạng lùi
Hoạt động 2: Ví dụ 2
Vớ dụ 2: Chương trỡnh thực hiện
nhập từ bàn phớm hai số nguyờn
dương M và N (M<N), tớnh và
đưa ra màn hỡnh tổng cỏc số chia
hết cho 3 hoặc 5 trong phạm vi
từ M đến N
For- Do TL: Sau mỗi lần lặp biến N tự động thay đổi (tăng hoặc giảm 1 đơn vị) TL: Cần đa ra S
program Tong_1a;
uses crt;
var S: real;
a, N: integer;
begin
clrscr;
write('Hay nhap gia tri a vao!');
readln(a);
S:=1.0/a;
{Buoc 1}
for N:= 1 to 100 do
S:= S+1.0/(a+N); writeln('Tong S la: ', S:8:4);
readln
end.
program Tong_1b;
uses crt;
var S: real;
a, N: integer;
begin
clrscr;
write ('Hay nhap gia tri a vao!');
readln(a);
S:=1.0/a;
for N:= 100 downto 1 do
S:= S+1.0/(a+N);
writeln('Tong S la: ', S:8:4);
readln
end.
TL: Lệnh for – do và lệnh if – then TL: Biến M,N, I, T kiểu nguyờn (biến
T kiểu Longint) TL: Nhập giỏ trị cho biến M,N TL: Làm biến đếm cho vũng lặp TL: Giỏ trị đầu là M, giỏ trị cuối là N
TL: Cần đưa ra tổng T
Trang 3Gợi ý: Cần cú một biến đếm
chạy từ M đến N, kiểm tra nếu
biến đếm chia hết cho 3 hoặc 5
thỡ cộng giỏ trị của biến đếm vào
biến tổng
(?) Như vậy, ta cần ỏp dụng
những lệnh nào để giải quyết
việc này?
(?)Cần khai bỏo những biến
nào? Kiểu dữ liệu của biến là gỡ?
(?) Đối với bài toán này ta cần
nhập giá trị cho những biến nào
(?) Biến I có tác dụng gì trong
bài toán
(?) Giỏ trị đầu, giỏ trị cuối trong
vũng lặp của bài toỏn này được
xỏc định như thế nào
(?) bài toán cần đa ra kết quả gì
Từ ý tưởng nờu trờn 1 hs lờn
bảng viết chương trỡnh
Yêu cầu 1 vài học sinh khác nhận
xét
GV nhận xét và chốt lại chơng trình
đúng
TL: 1 hs lờn bảng viết chương trỡnh
program Vi_du_2;
uses crt;
var M, N, I: integer;
T: longint;
begin
clrscr;
writeln('Nhap so M nho hon N');
write('M = ');readln(M);
write('N = ');readln(N);
T:= 0;
for I:= M to N do if(I mod 3 = 0) or (I mod 5 = 0) then
T:=T+I;
writeln('KET QUA: ', T);
readln
end
IV: Củng cố bài
Cỏch diễn đạt và vận dụng cõu lệnh lặp for – do vào bài toỏn cụ thể
Xem trước nội dung phần 3 của bài 10 trang 45 – 48;
Làm cỏc bài tập 1 – 6 trang 50 – 51 sỏch giỏo khoa