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: SGK
HS: Xem trước bài ở nhà
Ngày soạn: 22/02/2010 tiết theo ppct: 50 Ngày dạy: 26/02/2010 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: SGK HS: Xem trước bài ở nhà III. Tiến trình bài giảng 1. Ổn định lớp 2. Kiểm tra bài cũ Nªu cÊu tróc lÖnh víi sè lÇn cha biÕt tríc? Hoạt động của GV Y/c hs nhắc lại cú pháp câu lệnh lặp với số lần chưa biết trước 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 Xét ví dụ 4 Cho học sinh quan sát phim trong chương trình ? Chạy chương trình này, ta nhận được giá trị ntn? Giới thiệu ví dụ 5 sgk Viết chương trình tính tổng 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. Giới thiệu phần 3 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". Hoạt động của HS While do Đọc ví dụ 4 SGK Quan sát đoạn chương trình Xuất giá trị của biến n và tổng của n số đầu tiên > 1000 Đọc ví dụ 5 sgk Chú ý nghe Quan sát Nội dung 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. Ví dụ 5. Viết chương trình tính tổng Giải : Để 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); * 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ố -Ghi nhớ sgk - Làm bài tập 2,3a,bài 5 SGK/71
Tài liệu đính kèm: