LẶP VỚI SỐ LẦN CHƯA BiẾT TRƯỚC (tiếp) LẶP VỚI SỐ LẦN CHƯA BiẾT TRƯỚC (tiếp) 1. Các hoạt động lặp với số lần chưa biết trước. 1. Các hoạt động lặp với số lần chưa biết trước. Cú pháp: while <điều kiện> do <câu lệnh>; Trong đó: -Điềukiệnthường là một phép so sánh; -Câulệnh có thể là câu lệnh đơn giản hay câu lệnh ghép. Câu lệnh lặp này được thực hiện như sau: (1) Kiểm tra điềukiện: (2) Nếu điềukiện SAI, câu lệnh sẽ bị bỏ qua và chuyển sang câu lệnh tiếp theo trong chương trình. Nếu điềukiện ĐÚNG, thực hiện câulệnh và quay lại bước 1. Tiết 45. Bài 8 2. Ví dụ về lệnh lặp với số lần chưa biết trước 2. Ví dụ về lệnh lặp với số lần chưa biết trước Ví dụ: Ví dụ: - Tập lái xe đến khi biết lái - Tập lái xe đến khi biết lái - Học thuộc lòng một bài thơ cho tới khi bố mẹ kiểm tra là đã thuộc thì mới kết - Học thuộc lòng một bài thơ cho tới khi bố mẹ kiểm tra là đã thuộc thì mới kết thúc, nếu không thì phải học lại… thúc, nếu không thì phải học lại… ?Em Hãy trình bày cú ?Em Hãy trình bày cú pháp của câu lệnh lặp pháp của câu lệnh lặp với số lần chưa biết với số lần chưa biết trước? Nêu hoạt động trước? Nêu hoạt động của câu lệnh? của câu lệnh? ?Em hãy nêu một vài ví dụ về hoạt động lặp với số lần chưa biết trước? LẶP VỚI SỐ LẦN CHƯA BiẾT TRƯỚC (tiếp) LẶP VỚI SỐ LẦN CHƯA BiẾT TRƯỚC (tiếp) 1. Các hoạt động lặp với số lần chưa biết trước. 1. Các hoạt động lặp với số lần chưa biết trước. Tiết 45. Bài 8 2. Ví dụ về lệnh lặp với số lần chưa biết trước 2. Ví dụ về lệnh lặp với số lần chưa biết trước Ví dụ 5: Viết chương trình tính tổng 100 1 3 1 2 1 1 ++++=T ?Bài toán trên là ?Bài toán trên là hoạt động lặp với số hoạt động lặp với số lần biết trước hay lặp lần biết trước hay lặp với số lần chưa biết với số lần chưa biết trước? trước? Bài toán trên là hoạt động lặp với số lần biết trước Bài toán trên là hoạt động lặp với số lần biết trước Ví dụ 5: Viết chương trình tính tổng NhËn xÐt: NhËn xÐt: T1 = 1 T1 = 1 T2 = T1 + 1/2 T2 = T1 + 1/2 T3 = T2 + 1/3 T3 = T2 + 1/3 T4 = T3 + 1/4 T4 = T3 + 1/4 T100 = T99 + 1/100 T100 = T99 + 1/100 B¾t ®Çu tõ T2 viÖc tÝnh T ® îc lÆp B¾t ®Çu tõ T2 viÖc tÝnh T ® îc lÆp ®i lÆp l¹i 99 lÇn theo quy luËt ®i lÆp l¹i 99 lÇn theo quy luËt T T sau sau = T = T tr íc tr íc + 1/i + 1/i víi i ch¹y tõ 2 víi i ch¹y tõ 2 → → 100 100 1=T 2 1 + 3 1 + 4 1 + . . .+ + 1 100 . . . . . . . . . . . . . . . . . . . . 100 1 3 1 2 1 1 ++++=T Phân tích bài toán: Program vidu5_1; Var i: integer; T: real; Begin T:=0; For i:=1 to 100 do T:=T+1/i; Writeln (T); End. *) Giải bài toán bằng câu lệnh lặp với số lần biết trước: Cú pháp của câu lệnh: For <biến đếm>:= <giá trị đầu> To <giá trị cuối> Do <câu lệnh>; Giá trị đầu: 1 Giá trị cuối: 100 Câu lệnh: T:=T+1/i; Chương trình được viết như sau: ?Em hãy nhắc lại ?Em hãy nhắc lại cũ pháp của câu cũ pháp của câu lệnh lặp với số lệnh lặp với số lần biết trước? lần biết trước? Program vidu5_2; Var i: integer; T: real; Begin T:=0; i:=1; while i<=100 do begin T:=T+1/i; i:=i+1; end; end. *) Giải bài toán bằng câu lệnh lặp với số lần chưa biết trước: Nếusửdụngcâulệnhwhile…dothìđiềukiệncủachương trìnhlà: i<=100 Vònglặpsẽdừnglạikhi: Chương trình sẽ được viết như sau: i>100 Qua ví dụ này cho ta 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. Nhưng tùy trường hợp mà chúng ta sử dụng câu lệnh for…do… thay cho câu lệnh while…do… vì lệnh lặp while…do… chỉ phù hợp cho lệnh lặp với số lần chưa biết trước còn câu lệnh for…do phù hợp lệnh lặp với số lần biết trước. Kết quả của hai chương trình trên là như nhau. Củng cố Củng cố ?Trongcáchoạtđộngdướiđây,hoạtđộng ?Trongcáchoạtđộngdướiđây,hoạtđộng nàosẽđượcthựchiệnlặplạivớisốlần nàosẽđượcthựchiệnlặplạivớisốlần chưabiết? chưabiết? A. Tính tổng của 20 số tự nhiên đầu tiên. B. Nhập một số hợp lệ, ví dụ số nguyên trong khoảng từ 0 đến 10, vào máy tính. Nếu số nhập vào không hợp lệ thì được yêu cầu nhập lại. C. Nhập các số nguyên từ bàn phím cho đến khi đủ 50 số. D. Nhập các số từ bàn phím và tính tổng cho đến khi lần đầu tiên nhận được tổng lớn hơn 1000 thì kết thúc Dặn dò Dặn dò Về nhà học bài. Về nhà học bài. Xem trước ví dụ 4, phần 3 giờ sau học Xem trước ví dụ 4, phần 3 giờ sau học tiếp. tiếp. . tiếp theo trong chương trình. Nếu điềukiện ĐÚNG, thực hiện câulệnh và quay lại bước 1. Tiết 45. Bài 8 2. Ví dụ về lệnh lặp với số lần chưa biết trước 2. Ví dụ về lệnh lặp với số lần chưa biết. động lặp với số lần chưa biết trước. 1. Các hoạt động lặp với số lần chưa biết trước. Tiết 45. Bài 8 2. Ví dụ về lệnh lặp với số lần chưa biết trước 2. Ví dụ về lệnh lặp với số lần chưa biết. trước. Cú pháp: while <điều kiện> do <câu lệnh>; Trong đó: -Điềukiệnthường là một phép so sánh; -Câulệnh có thể là câu lệnh đơn giản hay câu lệnh ghép. Câu lệnh lặp này được thực hiện