Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 12 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
12
Dung lượng
3,63 MB
Nội dung
Bài 8 Lặp với số lần chưa biết trước Tin Học 8 Tuần 28 Tiết 55 www.themegallery.com KIỂM TRA BÀI CŨ Câu 1: Hãy ghi cú pháp của câu lệnh lặp For…do ? Câu 2: Hãy viết chương tình tính tổng của 5 số đầu tiên ? For <biến đếm>:= <giá trị đầu> to <giá trị cuối> do <câu lệnh>; Var i, Tong: integer; Begin Tong:=0; For i: = 1 to 5 do Tong:= Tong + i; Write(‘Tong= ’,Tong); Readln; End. Lặp với số lần chưa biết trước Tuần 28 Tiết 55 Bài 8 www.themegallery.com 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: Tuần 28 Tiết 55 Bài 8 Ví dụ 1: Ví dụ 2: Nếu cộng lần lượt n số tự nhiên đầu tiên (n=1,2,3, …), ta sẽ được kết quả tăng dần T 1 =1, T 2 =1+2,…tăng dần. Cần cộng bao nhiêu số tự nhiên đầu tiên để ta nhận được tổng T n nhỏ nhất lớn hơn 1000 ? Bước 1: S 0, n= 0. Bước 2: Nếu S 1000, n n + 1; ngược lại, chuyển tới bước 4. Bước 3: S S + n và quay lại bước 2. Bước 4: 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. ≤ www.themegallery.com 2. Ví dụ về lệnh 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 Tuần 28 Tiết 55 Bài 8 Hãy nêu cấu trúc câu lệnh lặp với số lần chưa biết trước ? While <điều kiện> do <câu lệnh>; Trong đó: - Điều kiện thường là các phép so sánh; - câu lệnh có thể là câu lệnh đơn giản hay câu lệnh ghép. Câu lệnh lặp được thực hiện như thế nào ? Câu lệnh Điều kiện ? Đúng Sai Kết thúc www.themegallery.com Lặp với số lần chưa biết trước Tuần 28 Tiết 55 Bài 8 2. Ví dụ về lệnh lặp với số lần chưa biết trước: Ví dụ 3: Với giá trị nào của n để 1/n < 0.003 ?. Viết chương Trình tính số n nhỏ nhất để 1/n nhỏ hơn một sai số cho trước. Uses crt; Var x:Real; n:Integer; Const Si_So=0.003; Begin Clrscr; x:=1; n:=1; While x >= Sai_So do Begin n:=n+1; x:=1/n; End; Writeln(‘So n nho nhat de 1/n < ‘,Sai_So:6:4, ‘ la ‘,n); Readln; End. www.themegallery.com Lặp với số lần chưa biết trước Tuần 28 Tiết 55 Bài 8 2. Ví dụ về lệnh lặp với số lần chưa biết trước: Ví dụ 4: Viết chương tình tính tổng n số trong ví dụ 2 Var S,n:Integer; Begin S:=0; n:=1; While S<=1000 do Begin S:=S+n; n:=n+1; End; Writeln(‘So n nho nhat de tong > 1000 la ‘,n); Writeln(‘Tong dau tien lon hon n la ‘,S); Readln; End. www.themegallery.com Lặp với số lần chưa biết trước Tuần 28 Tiết 55 Bài 8 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 tình tính tổng T=1+1/2+1/3+…+1/n T:=0; For i:=1 to 100 do T:=T+1/i; Writeln(T); T:=0; i:=1; While i<= 100 do Begin T:=T+1/i; i:=i+1; End; Writeln(T); For…do While…do www.themegallery.com 3. Lặp vô hạn lần – lỗi lập trình cần tránh: Lặp với số lần chưa biết trước Tuần 28 Tiết 55 Bài 8 Var a:Integer; Begin a:=5; While a < 6 do Writeln(‘A’); End. Var a:Integer; Begin a:=5; While a < 6 do Begin Writeln(‘A’); a:=a+1; End; End. www.themegallery.com Lặp với số lần chưa biết trước Tuần 28 Tiết 55 Bài 8 GHI NHỚ: 1. Ngoài cấu trúc lặp với số lần lặp biết trước, các ngôn ngữ lập trình còn có các câu lệnh lặp với số lần chưa biết trước. 2. While…do là câu lệnh lặp với số lần chưa biết trước trong pascal. www.themegallery.com CỦNG CỐ Câu 1: Hãy ghi cú pháp câu lệnh lặp với số lần chưa biết trước ? Cho ví dụ minh họa ? Câu 2: Câu lệnh nào sau đây đúng ? A. While x:=10 do x:=x+1; B. While x=10 do x=x+1; C. While x<=10 do x:=x+1; D. Tất cả đều sai. [...]...DẶN DÒ www.themegallery.com - Về học bài này - Tập trả lời các câu hỏi và bài tập trang 71 SGK - Xem trước Bài 9 Làm việc với dãy số Thực hiện: Tháng 11/2010 . ’,Tong); Readln; End. Lặp với số lần chưa biết trước Tuần 28 Tiết 55 Bài 8 www.themegallery.com 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: Tuần 28 Tiết 55 Bài. www.themegallery.com Lặp với số lần chưa biết trước Tuần 28 Tiết 55 Bài 8 GHI NHỚ: 1. Ngoài cấu trúc lặp với số lần lặp biết trước, các ngôn ngữ lập trình còn có các câu lệnh lặp với số lần chưa biết trước. 2 ‘,n); Readln; End. www.themegallery.com Lặp với số lần chưa biết trước Tuần 28 Tiết 55 Bài 8 2. Ví dụ về lệnh lặp với số lần chưa biết trước: Ví dụ 4: Viết chương tình tính tổng n số trong ví dụ 2 Var S,n:Integer; Begin