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