Giáo án Tin học 8 - Bài 8: Lặp với số lần biết trước - Thái Quang Tiến - Trường THCS Bổ Túc

1. MỤC TIÊU:

1.1. Kiến thức:

- HS biết:

Hs 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.

- HS hiểu:

Hs hiểu được lệnh lặp.

1.2. Kỉ năng:

Dùng 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 thỏa mãn.

1.3. Thái độ:

Hiểu được 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.

Học tập nghêm túc.

2. TRỌNG TÂM

- Các hoạt động lặp với số lần chưa biết trước.

- Ví dụ về lặp với số lần chưa biết trước.

- Lặp vô hạn lần – lỗi chương trình cần tránh.

 

doc 4 trang Người đăng nguyenphuong Lượt xem 1708Lượt tải 0 Download
Bạn đang xem tài liệu "Giáo án Tin học 8 - Bài 8: Lặp với số lần biết trước - Thái Quang Tiến - Trường THCS Bổ Túc", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
Bài: 8 – Tiết: 49,50
Tuần dạy: 26
LẶP VỚI SỐ LẦN CHƯA BIẾT TRƯỚC
1. MỤC TIÊU:
1.1. Kiến thức:
- HS biết:
Hs 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.
- HS hiểu:
Hs hiểu được lệnh lặp.
1.2. Kỉ năng: 
Dùng 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 thỏa mãn.
1.3. Thái độ:
Hiểu được 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.
Học tập nghêm túc.
2. TRỌNG TÂM
Các hoạt động lặp với số lần chưa biết trước.
Ví dụ về lặp với số lần chưa biết trước.
Lặp vô hạn lần – lỗi chương trình cần tránh.
3. CHUẨN BỊ: 
3.1. Giáo viên: Phòng máy, máy chiếu.
3.2. Học sinh: Sách giáo khoa, đồ dùng học tập.
4. TIẾN TRÌNH 
4.1. Ổn định tổ chức và kiểm diện: 
Lớp 8a1: 	
Lớp 8a2: 	
4.2. Kiểm tra miệng:
? Trình bày cú pháp của lệnh lặp với số lần biết trước?
Tl: For := to do 
4.3. Bài mới:
HOẠT ĐỘNG CỦA GV, HS
NỘI DUNG BÀI HỌC
Hđ1: Các hoạt động lặp với số lần chưa biết trước:
- GV cho HS đọc phần 1 ở SGK
? So sánh sự khác nhau của lệnh lặp với số lần biết trước và lệnh lặp với số lần chưa biết trước.
- Lệnh lặp này còn gọi là lệnh lặp có điều kiện.
- GV phân tích các ví dụ để HS hiểu thêm.
 sai
 điều kiện
 đúng
 Câu lệnh 
Hđ2: Ví dụ về lệnh lặp với số lần chưa biết trước:
? Trình bày cú pháp của lệnh lặp với số lần chưa biết trước?
- Điều kiện: thường là một phép so sánh
- Câu lệnh: có thể là một câu lệnh đơn giản hoặc có thể là +một câu lệnh ghép.
? Trình bày ý nghĩa của câu lệnh?
Ví dụ 1: Viết chương trình tìm số tự nhiên n để < 0,005.
GV phân tích bài toán và yêu cầu HS viết chương trình
- Lệnh lặp với số lần biết trước: Biết trước sẽ lặp bao nhiêu lần thì dừng lại.
- Lệnh lặp với số lần chưa biết trước: không biết trước được là sẽ lặp bao nhiêu lần thì dừng lại. Vòng lặp chỉ dừng lại khi thỏa mãn một điều kiện nào đó.
While do ;
- Máy kiểm tra điều kiện, nếu sai thì câu lệnh được bỏ qua và kết thúc vòng lặp. Nếu điều kiện đúng thì thực hiện câu lệnh và quay lại bước 1
Program tim_n;
Uses crt;
Var x: real; n: Integer;
Begin clrscr;	
x:= 1; n := 1;
while x>0.005 do 
 begin n:= n+1; x:= 1/n; end;
writeln(‘so n can tim la: ‘, n);
readln;
end.
Tiết 50 - Hoạt động 3: 
GV: đưa ví dụ 4 SGK
- Giảng giải, hướng dẫn học sinh cách thực hiện câu lệnh trong bài tập này
HS: Chú ý lắng nghe và quan sát
HS: Gõ bài tập vào máy tính và chạy thử chương trình
Hoạt động 4: 
GV: đưa ví dụ 5 SGK
- Giảng giải, hướng dẫn học sinh cách thực hiện câu lệnh trong bài tập này
HS: Chú ý lắng nghe và quan sát
HS: Gõ bài tập vào máy tính và chạy thử chương trình
Hoạt động 5: 
GV: Hướng dẫn học sinh cách thực hiện một số lỗi trong chương trình
HS: Chú ý lắng nghe và ghi vở
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:
var S,n: integer;
begin
S:=0; n:=1;
while S<=1000 do
 	begin n:=n+1; S:=S+n end;
writeln('So n nho nhat de tong > 1000 la ',n);
writeln('Tong dau tien > 1000 la ',S);
end.
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 ta có thể sử dụng lệnh lặp với số lần lặp biết trước fordo:
T:=0;
for i:=1 to 100 do T:=T+1/i;
writeln(T);
Nếu sử dụng lệnh lặp whiledo, đ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;
writeln(T);
Ví dụ này cho thấy rằng chúng ta có thể sử dụng câu lệnh whiledo thay cho câu lệnh fordo. 
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. 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;
while a<6 do writeln('A');
end.
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".
4.4. Câu hỏi, bài tập củng cố:
- Câu 1: Nêu cú pháp câu lệnh lặp?
- Đáp án câu 1: 
While do ;
4.5.Hướng dẫn học sinh tự học:
-Đối với bài học ở tiết này:
+ Học bài theo sách giáo khoa và vở ghi, Ôn lại các kiến thức chính đã học và luyện viết, làm đi làm lại nhiều lần.
+ Học kĩ lí thuyết, viết chương trình tính tổng 100 số tự nhiên, N số tự nhiên đầu tiên.
+ Làm các bài tập còn lại.
- Đối với bài học ở tiết tiếp theo:
Chuẩn bị bài thực hành 6: “Sử dụng câu lệnh lặp While .... do.
5. RÚT KINH NGHIỆM

Tài liệu đính kèm:

  • docBài 8. Lặp với số lần biết trước - Thái Quang Tiến - Trường THCS Bổ Túc.doc