Lặp với số lần chưa biết trước và câu lệnh While - do Cấu trúc: While Do ; Trong đó: - Điều kiện là biểu thức lôgic hoặc quan hệ.. - Câu lệnh là 1 câu lệnh đơn hoặc ghép.[r]
(1)GV: NGUYỄN THỊ LẮM Ngày soạn: 29 / 11 /2014 Ngày dạy:4 /12 /2014 Lớp: 11CB2 Tuần: 16 Tiết CT: 16 GIÁO ÁN TIN HỌC 11 CHƯƠNG III: CẤU TRÚC RẼ NHÁNH VÀ LẶP Bài 10: CẤU TRÚC LẶP (TIẾT 2) I.Mục đích yêu cầu 1.Kiến thức - Hiểu nhu cầu cấu trúc lặp biểu diễn thuật toán - Hiểu cấu trúc lặp với số lần định trước và kiểm tra điều kiện trước - Biết cách vận dụng đúng đắn cấu trúc lặp vào tình cụ thể Kĩ - Mô tả thuật toán số bài toán sử dụng lệnh lặp - Viết đúng các lệnh lặp với số lần định trước, kiểm tra điều kiện - Viết thuật toán số bài toán đơn giản Thái độ II.Phương tiện, phương pháp Phương tiện -Máy tính, máy chiếu, phông chiếu, bảng phấn - Đính kèm Slide bài giảng Power Point Phương pháp: nêu – giải vấn đề III Nội dung: Ổn định lớp(1’) Kiểm tra bài cũ(3’) HS1: Cấu trúc câu lệnh For-do? Giới thiệu bài Nội dung bài Tg 5’ 5’ 5’ 5’ Hoạt động GV Câu lệnh While …Do Giải thích: <điều kiện>: biểu thức quan hệ biểu thức logic <câu lệnh>: lệnh cần lặp lại Hoạt động HS - Dựa vào cấu trúc, cho biết máy thực <điều kiện> trước hay -Tính Điều kiện trước <câu lệnh> trước? - Sự khác câu lệnh -For- lặp với số lần biết For-do và While-do là gì? trước; While-do lặp với số lần -Sự khác bài toán này với chưa biết trước bài toán tính tổng đã học VD1? -Bài trước: cho giới hạn N - Lặp bao nhiêu lần? Bài này: cho giới hạn S - Lặp đến nào? - Chưa xác định Đôi có bài toán có - Cho đến điều kiện lặp lại câu lệnh không 0.001 thõa mãn biết trước số lần lặp Cần có aN cấu trúc điều khiển lặp lại công việc định thỏa mãn điều kiện nào đó - Điều kiện để lặp lại bài Lop11.com Nội dung Lặp với số lần chưa biết trước và câu lệnh While - Cấu trúc: While <điều kiện> Do <câu lệnh>; Trong đó: - Điều kiện là biểu thức lôgic quan hệ - Câu lệnh là câu lệnh đơn ghép Sơ đồ thực hiện: điều kiện Đ Câu lệnh S (2) GV: NGUYỄN THỊ LẮM 5’ toán là gì? 0.001 - Trong bài toán trên lệnh cần lặp ĐK: aN là gì? S := S + 1/(a+N); để tính tổng Nêu nội dung ví dụ N := N + 1; để tăng số Phân tích để xác định <điều kiện> và <câu lệnh> Minh họa tìm ucln số 15 và 25 5’ 5’ VD1: Viết CT tính tổng 1 1 a a 1 a aN 0.001 aN S Program tong_2; Var a, N: integer; S: real; Begin Trả lời: ucln (15, 25) = Writeln(‘Nhap vao gia tri a: ’); Readln(a); Hỏi: - Điều kiện: M<>N S:=1/a; N:=0; - Điều kiện để tiếp tục lặp là gì? - M := M – N; While (1/(a+N)>= 0.0001) - Các lệnh cần lặp là gì? N := N – M; Begin N:=N+1; - Thuật toán: S:= S+1/(a+N); - Yêu cầu hs nêu thuật toán tìm B1: Nếu m=n thì ucln=m, End; ucln số đó dừng; Writeln(‘Tong S la : ‘,S:8:3); B2: Nếu m>n thì m:=m-n Readln ngược lại n:=n-m, quay lại B1 End Suy nghĩ và trả lời: VD2: Tìm UCLN số nguyên + Điều kiện nào để lặp M<> N dương M và N Hãy nêu câu hỏi cần đặt + Những lệnh nào cần lặp Program timUCLN; gặp bài toán dạng này? M:=M-N N:= N-M Var M, N: integer; Begin Writeln(‘Nhap so nguyen M va N:’); Readln(M,N); While M<>N If M>N then M:=M-N else N:=N-M; Writeln(‘UCLN M va N la:’,M); Readln End M N 5’ GIÁO ÁN TIN HỌC 11 15 25 15 10 10 5 IV.Củng cố và dặn dò(1’) - Nhắc lại cấu trúc while…do - Cách vận dụng các cấu trúc lặp để giải bài toán - Làm các bài tập cuối chương V.Rút kinh nghiệm Lop11.com (3)