Giáo án Tin học 8 - Bài 8: Lặp với số lần biết trước

Trong đó:

 for, to, do là các từ khóa

 biến đếm là biến kiểu nguyên, giá trị đầu và giá trị cuối là các giá trị nguyên.

 câu lệnh lặp sẽ thực hiện câu lệnh nhiều lần, mỗi lần, là một vòng lặp là biết trước và bằng

 giá trị cuối – giá trị đầu + 1

 Khi thực hiện, ban đầu biến đếm sẽ nhận giá trị là giá trị đầu, sau mỗi vòng lặp, biến đếm được tự động tăng thêm một đơn vị cho đến khi bằng giá trị cuối.

 

ppt 17 trang Người đăng nguyenphuong Lượt xem 1565Lượt tải 1 Download
Bạn đang xem tài liệu "Giáo án Tin học 8 - Bài 8: Lặp với số lần biết trước", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
Chào mừng quý thầy cô và các bạn học sinh đến với tiết học hôm nay.Kieåm tra baøi cuõ1. Hãy nêu cú pháp câu lệnh lặp ForDo?Cú pháp: For:= to do ;Trong đó: for, to, do là các từ khóa biến đếm là biến kiểu nguyên, giá trị đầu và giá trị cuối là các giá trị nguyên. câu lệnh lặp sẽ thực hiện câu lệnh nhiều lần, mỗi lần, là một vòng lặp là biết trước và bằng giá trị cuối – giá trị đầu + 1 Khi thực hiện, ban đầu biến đếm sẽ nhận giá trị là giá trị đầu, sau mỗi vòng lặp, biến đếm được tự động tăng thêm một đơn vị cho đến khi bằng giá trị cuối.Hãy quan sát:Bài 1:S = 1 + 2 + 3 + . . .+100Bài 2:S = 1 + 2 + 3 + . . . Haõy cho bieát baøi 1 soá voønglaëp laø bao nhieâu?Haõy cho bieát baøi 2 soá voøng laëp laø bao nhieâu?. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .   . . . Laëp 100 laànKhoâng bieát ñöôïc!Lặp với số lần biết trướcLặp với số lần chưa biết trướcBaøi 8: LAËP VÔÙI SOÁ LAÀN CHÖA BIEÁT TRÖÔÙCTình huoáng 1 Tôù phaûi bò phaït nhö vaäy ñeán khi naøo? Hic  hic Laøm sao mình bieát ñöôïc?Tình huoáng 2Meøo ôi, khi naøo chuùng mình coù theå döøng?Khi meï ñi chôï veà.Khi naøo thì meï veà?Meøo ñaâu bieát. Chuùng ta cöù chôi tieáp ñi.Tình huoáng 3Coøn tôù phaûi thoåi saùo vaø nhaûy cho tôùi bao giôø ?Laøm sao mình bieát ñöôïc?Ñaây laø caùc hoaït ñoäng laëp vôùi soá laàn chöa bieát tröôùc1. Các hoạt động lặp với số lần chưa biết trước Một ngày khác, Long quyết định cứ 10 phút gọi điện một lần cho Trang cho đến khi nào có người nhấc máy. Chöa theå bieát tröôùc ñöôïc. Ñieàu kieän ñeå keát thuùc hoaït ñoäng laëp ñoù laø coù ngöôøi nhaác maùy. VD1(sgk):1. Các hoạt động lặp với số lần chưa biết trướcVD2(sgk): tăng dầnĐiều kiện như thế nào thì kết thúc hoạt động lặp?Điều kiện: Khi tổng Tn nhỏ nhất lớn hơn 1000 thì kết thúc hoạt động lặp1. Các hoạt động lặp với số lần chưa biết trướcPhân tích bài toán:nTổng TnĐiều kiện Tn ≤ 10001T1 = 1Đúng 2T2 = 1 + 2 Đúng3T3 = 1 + 2 + 3 Đúng  ?Tn = 1 + 2 + 3 +  +? (Sao cho Tn nhỏ nhất lớn hơn 1000)Sai, kết thúc việc tính tổng1. Các hoạt động lặp với số lần chưa biết trước Kí hiệu S là tổng cần tìm và ta có thuật toán như sau:S  0, n  0.Nếu S≤1000, n  n+1; Ngược lại, chuyển tới bước 4.S  S + n và quay lại bước 2.In kết quả: S và n là số tự nhiên nhỏ nhất sao cho S>1000. Kết thúc thuật toán.Các hoạt động lặp với số lần chưa biết trước phụ thuộc vào cái gì và chỉ dừng lại khi nào?* Có thể diễn tả bài toán trên bằng sơ đồ như sau:S1000?Sain  n+1;S  S+n;Đúng2. Ví dụ về lệnh lặp với số lần chưa biết trướcCú pháp: While do ;Trong ñoù:While, do: töø khoaù.: laø caâu leänh ñôn hoaëc caâu leänh gheùp.: laø pheùp so saùnh (, =, =,)Bieán ñeám: kieåu nguyeân, kieåu thöïc.Câu lệnh: là môt câu lệnh trong Pascal (có thể là câu lệnh đơn giản hay câu lệnh ghép)Quy trình:Sô ñoà khoái:Điều kiệnCâu lệnhSaiĐúng Neáu ñieàu kieän ñuùng, thöïc hieän caâu leänh vaø quay laïi böôùc 1.B1: Kieåm tra ñieàu kieän. Neáu ñieàu kieän sai, caâu leänh boû qua.B2: 2. Ví dụ về lệnh lặp với số lần chưa biết trước2. Ví dụ về lệnh lặp với số lần chưa biết trướcVD1: While ab do Begin write(‘a>b’); a:=a-1; End;Trong đó :  While, do là các từ khóa.	  Điều kiện là a>b (chứa phép so sánh).	  Câu lệnh là Write(‘a>b’) và a:=a-1 (câu lệnh ghép). 2. Ví dụ về lệnh lặp với số lần chưa biết trướcVD: Dùng câu lệnh lặp While  Do để viết chương trình thể hiện thuật toán trong Ví dụ 2 (Sgk)var S,n: integer;BeginS:=0; n:=0;while S1000’);Readln;End.Tong S= 1035 va 45 la so tu nhien nho nha sao cho S>1000Lưu ý: 1.Nếu viết chương trình thì điều kiện trong câu lệnh While  do phải đúng. 2.Nếu đề cho đều kiện trước thì điều kiện trong câu lệnh While  do phải ngược với điều kiện đề đã cho.Cuûng coáHaõy chæ ra caùc loãi trong caùc caâu leänh sau: While S <= 10 do begin n:= n + 1; S := S + n; end;While S <= 10 do n:= n + 1; S := S + n;2) While i <=x; do write(‘Gia tri cua i la:’); 1) While X =10 do X = X + 5; 3) S:= 0; n := 0; Về nhà học bài cũ và làm bài tập 1, 2, 5 SGK/71

Tài liệu đính kèm:

  • pptBài 8. Lặp với số lần biết trước.ppt