Giáo án Tin học lớp 8 - Bài 8: Lặp với số lần chưa biết trước
I.Mục tiêu
-Biết nhu cầu cần có cấu trúc lặp với số lần chưa
biết trước trong ngôn ngữ lập trình;
-Biết ngôn ngữ lập trình dùng cấu trúc lặp với số
lần chưa biết trước để chỉ dẫn máy tính thực hiện lặp
đi lặp lại công việc đến khi một điều kiện nào đó
được thoả mãn;
- Hiểu hoạt động của câu lệnh lặp với số lần
chưa biết trước while.do trong Pascal.
II. Chuẩn bị
-GV: Giáo án, máy chiếu, máy tính.
-HS: Sách, vởđọc trước bài ở nhà.
Giáo án tin học lớp 8
Bài 8: lặp với số lần chưa biết trước
I.Mục tiêu
- Biết nhu cầu cần có cấu trúc lặp với số lần chưa
biết trước trong ngôn ngữ lập trình;
- Biết ngôn ngữ lập trình dùng cấu trúc lặp với số
lần chưa biết trước để chỉ dẫn máy tính thực hiện lặp
đi lặp lại công việc đến khi một điều kiện nào đó
được thoả mãn;
- Hiểu hoạt động của câu lệnh lặp với số lần
chưa biết trước while...do… trong Pascal.
II. Chuẩn bị
- GV: Giáo án, máy chiếu, máy tính.
- HS: Sách, vởđọc trước bài ở nhà.
III. Tiến trình dạy - học
Hoạt động 1: Kiểm tra bài củ
?ViÕt có ph¸p c©u lÖnh lÆp víi sè lÇn cha biÕt
tríc råi gi¶i thÝch.
?Lµm bµi tËp 2 trang 71.
Hoạt động 2: Xét c ác ví dụ.
+ G : ta tiếp tục xét các ví
dụ mà trong chương trình
có câu lệnh với số lần lặp
chưa biết trước
+ G : Chạy tay cho học
sinh xem
+ G : Cho học sinh chạy
chương trình trên máy
+ G : chạy chương trình
này, ta nhận được giá trị
ntn?
Ví dụ 4. Chương trình
Pascal dưới đây thể hiện
thuật toán tính số n trong
ví dụ 2:
+ Hs : chú ý nghe .
+ Hs : thực hiện
var S,n: integer;
begin
S:=0; n:=1;
while S<=1000 do
begin n:=n+1; S:=S+n
end;
Viết chương trình tính
tổng 1 1 11 ...
2 3 100
T
+ G : Cho học sinh quan
sát.
+ G : Chạy tay ( cả hai
chương trình ) cho học
sinh xem
+ G : so sánh kết quả khi
chạy hai chương trình
+ G : Ví dụ này cho thấy
writeln('So n nho nhat
de tong > 1000 la ',n);
writeln('Tong dau tien >
1000 la ',S);
end.
+ Hs : Nếu chạy chương
trình này ta sẽ nhận được
n = 45 và tổng đầu tiên
lớn hơn 1000 là 1034.
Ví dụ 5. Viết chương
trình tính tổng
1 1 11 ...
2 3 100
T
+ Hs : quan sát
Để viết chương trình tính
tổng 1 1 11 ...
2 3 100
T ta có
thể sử dụng lệnh lặp với
số lần lặp biết trước
rằng chúng ta có thể sử
dụng câu lệnh while…do
thay cho câu lệnh
for…do.
+ G : Giới thiệu phần 3
+ G : Khi viết chương
trình sử dụng cấu trúc lặp
cần chú ý tránh tạo nên
vòng lặp không bao giờ
kết thúc
+ Hs : Chú ý nghe
+ G : Chẳng hạn, chương
trình dưới đây sẽ lặp lại
vô tận:
var a:integer;
begin
a:=5;
for…do:
T:=0;
for i:=1 to 100 do
T:=T+1/i;
writeln(T);
+ Hs : chú ý nghe và tự
chạy tay lại
+ Hs : Kết quả bằng nhau
Nếu sử dụng lệnh lặp
while…do, đoạn chương
trình dưới đây cũng cho
cùng một kết quả:
T:=0;
i:=1;
while i<=100 do begin
T:=T+1/i; i:=i+1 end;
while a<6 do
writeln('A');
end.
+ G : Trong chương trình
trên, giá trị của biến a
luôn luôn bằng 5, điều
kiện a<6 luôn luôn đúng
nên lệnh writeln('A') luôn
được thực hiện.
Do vậy, khi thực hiện
vòng lặp, điều kiện trong
câu lệnh phải được thay
đổi để sớm hay muộn giá
trị của điều kiện được
chuyển từ đúng sang sai.
Chỉ như thế chương trình
mới không "rơi" vào
những "vòng lặp vô tận".
writeln(T);
* Nhận xét : Ví dụ này
cho thấy rằng chúng ta có
thể sử dụng câu lệnh
while…do thay cho câu
lệnh for…do.
3. Lặp vô hạn lần – Lỗi
lập trình cần tránh
Khi viết chương trình sử
dụng cấu trúc lặp cần chú
ý tránh tạo nên vòng lặp
không bao giờ kết thúc.
+ Hs : Chú ý nghe
Hoạt động 3: Củng cố
- Giáo viên hệ thống lại toàn bộ kiến thức đã học.
Hoạt động 4: Hướng dẫn về nhà
- Học bài theo sách giáo khoa và vở ghi.
- Làm bài tập 4, 5 SGK trang71.
- Đọc trước Bài TH 6.
File đính kèm:
Giáo án Tin học lớp 8 - Bài 8_Lặp với số lần chưa biết trước.pdf

