GV : 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. Một bạn đọc lại cho cô VD 2
HS: Đọc VD2
GV: Hướng dẫn học sinh viết chương trình bằng Pascal
HS: Chú ý lắng nghe và quan sát
GV: Bây giờ các em hãy tìm hiểu ý nghĩa của các câu lệnh trong chương trình chúng ta vừa viết?
HS: Thực hiện yêu cầu
GV: Yêu cầu một HS đứng tại chỗ và nêu ý nghĩa của các câu lệnh trong chương trình?
HS: Thực hiện yêu cầu
BAØI 8 LAËP VÔÙI SOÁ LAÀN CHÖA BIEÁT TRÖÔÙC TUAÀN 27 TIEÁT 53 Ngaøy soaïn: 22/02/2010 Ngaøy daïy: 02/03/2010 I.MỤC TIÊU 1. Kiến thức - Hiểu được các ví dụ trong SGK, nắm bắt được câu lệnh lặp với số lần chưa biết 2. Kỹ năng - Biết vận dụng các ví dụ trong SGK để từ đó làm được một số bài sử dụng cú pháp câu lệnh While...do để làm một số bài tập đơn giản 3. Thái độ - Nghiên túc học tập và phát biểu ý kiến II. CHUẨN BỊ 1. Giáo viên a. Phương pháp: Thuyết trình, vấn đáp, gợi mở b. Phương tiện: Giáo án, máy chiếu, máy tính. 2. Học sinh: Sách, vở đọc trước bài ở nhà. III. TIẾN TRÌNH DẠY - HỌC 1.Ổn định lớp - Ổn định trật tự - Kiểm tra sĩ số 2. 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. 3. Bài mới Hoạt động của thầy và trò Nội dung GV : 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. Một bạn đọc lại cho cô VD 2 HS: Đọc VD2 GV: Hướng dẫn học sinh viết chương trình bằng Pascal HS: Chú ý lắng nghe và quan sát GV: Bây giờ các em hãy tìm hiểu ý nghĩa của các câu lệnh trong chương trình chúng ta vừa viết? HS: Thực hiện yêu cầu GV: Yêu cầu một HS đứng tại chỗ và nêu ý nghĩa của các câu lệnh trong chương trình? HS: Thực hiện yêu cầu GV : Chạy chương trình trên máy cho HS quan sát HS: Quan sát Viết chương trình tính tổng GV : Cho học sinh quan sát. Hs : quan sát GV : so sánh kết quả khi chạy hai chương trình HS: So sánh kết quả GV : 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. GV : Giới thiệu phần 3 HS : Chú ý nghe GV : 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 GV : 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. GV: Chạy chương trình trên cho HS quan sát HS: Quan sát GV : 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". 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. + 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 Để 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); + 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 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); * 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 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. 4. Củng cố Nhắc lại cú pháp của câu lệnh lặp với số lần chưa biết trước 5. Dặn dò Về nhà học lại lý thuyết và làm bài tập cuối SGK, tiết sau chúng ta thực hành tại phòng máy IV. RÚT KINH NGHIỆM
Tài liệu đính kèm: