- Tìm theâm moät vaøi ví duï veà hoaït ñoäng laëp vôùi soá laàn chöa bieát tröôùc. - Veà nhaø hoïc baøi.[r]
(1)(2)(3)KIỂM TRA BÀI CŨ KIỂM TRA BÀI CŨ
- Hãy nêu cú pháp câu lệnh lặp For…Do Câu hỏi
Cú pháp:
(4)VD1: Viết chương trình tính tổng số tự nhiên từ đến 100
S = + + + +100
Lặp 100 lần
VD2: Viết chương trình nhập vào số gặp dừng lại Tính tổng số vừa nhập
Ch a bi t l p m y l nư ế ặ ấ ầ
Lặp với số lần biết trước, sử dụng câu lệnh lặp For… Do để viết chương trình
(5)(6) Nam làm tập làm xong
Cô phải tới nhà
Các em cho thêm ví dụ 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:
(7)VD1VD1(Sgk):
Long lặp lại hoạt động gọi điện lần?
1 Các hoạt động lặp với số lần chưa biết trước:
Chưa thể biết trước Điều kiện để kết thúc hoạt động lặp
đó có người nhấc máy.
Một ngày khác, Long quyết định cứ 10
(8)VD2
VD2(Sgk)::
1 Các hoạt động lặp với số lần chưa biết trước:
Điều kiện thì kết thúc hoạt động
lặp?
Điều kiện: Khi tổng Tn nhỏ nhất lớn 1000 kết
thúc hoạt động lặp
(9)1 Các hoạt động lặp với số lần chưa biết trước:
n Tổng Tn Điều kiện Tn ≤ 1000
1 T1 = Đúng
2 T2 = + Đúng Đúng
… … …
?
Tn = + + + … +? (Sao cho Tn nhỏ lớn 1000)
Sai, kết thúc việc tính tổng
3 T3 = + +
(10)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 quay lại bước 2.
In kết quả: S n số tự nhiên nhỏ cho S>1000 Kết thúc thuật toán.
1 Các hoạt động lặp với số lần chưa biết trước:
Kí hiệu S tổng cần tìm ta có thuật tốn sau:
Các hoạt động lặp với số lần chưa biết trước phụ thuộc vào gì dừng lại nào?
* Có thể diễn tả toán sơ đồ sau:
S1000? Sai
n n+1;
S S+n;
(11)2 Ví d v l nh l p với số lần chưa biết trước:ụ ề ệ ặ VD1: While a<=b a:=a+1;
VD2: While a>b
Begin write(‘a>b’); a:=a-1; End;
Trong : While, là từ khóa.
Điều kiện a<=b (chứa phép so sánh) Câu lệnh a:=a+1 (câu lệnh đơn)
Trong : While, là từ khóa.
Điều kiện a>b (chứa phép so sánh)
(12)VD: Dùng câu lệnh lặp While … Do để viết chương trình thể thuật tốn Ví dụ (Sgk)
2 Ví d v l nh l p với số lần chưa biết trước:ụ ề ệ ặ
var S,n: integer;
Begin
S:=0; n:=0;
while S<=1000 do begin
n:=n+1; S:=S+n ;
end;
write(‘Tong S= ’,S,‘ va ’,n,’ la so tu nhien nho nhat sao cho S>1000’);
Readln;
End.
Hãy nêu Cú Pháp câu lệnh lặp với số lần chưa biết trước?
(13)Học sinh thảo luận theo nhóm (2 bàn nhóm)
Học sinh thảo luận theo nhóm (2 bàn nhóm)
- Có câu hỏi Mỗi nhóm phép chọn câu hỏi,
nhóm chọn câu hỏi, cử đại diện đứng lên đọc đề Sau tất nhóm thảo luận
- Cách thức trả lời:
+ Nếu câu hỏi trắc nghiệm: tất nhóm giơ đáp án lên
+ Nếu câu hỏi tự luận: nhóm chọn câu hỏi cử đại diện đứng lên trả lời Các nhóm khác nhận xét
(14)A
A A
A Tính tổng số tự nhiên từ đến 20
B
B B
B Nhập số nguyên từ bàn phím đủ 50 số
D
D D
D Nhập vào số số nhập vào số chẵn dừng C
CC
C Mỗi ngày học lần
30 29282610111213141516171819202122232425279876543210
Câu 1: Trong hoạt động
(15)a) X:= 10; while X:= 10 X:= X + 5;
b) X:= 10; while X = 10 X = X + 5;
c) S:= 0; n:=0; while S <= 10 n:= n + 1; S:= S + n ; Thừa
dấu :
Thiếu dấu :
Thiếu Begin
Thieáu End
(16)In số từ đến 9
In số từ đến 9
In số từ đến 10
In số từ đến 10
In số 1
In số 1
Khơng phương án đúng.
Không phương án đúng.
A A A A B BB B C CC C D DD D
Câu 3: Đoạn lệnh sau cho kết gì? S:=1; While s < 10
(17)B 10 vòng lặp, S=5B 10 vòng lặp, S=5 D. 12 vòng lặp, S=4 A. 9 vòng lặp, S=5.5 C 11 vòng lặp, S=4.5
SAI ROÀI! SAI ROÀI! SAI ROÀI!
Câu 4: Thuật tốn sau thực vịng lặp? Khi kết thúc, giá trị S bao nhiêu?
- Bước 1: S 10, x 0.5.
- Bước 2: Nếu S 5.2 chuy n t i bể ớ ước 4.
- Bước 3: S S –x quay lại bước 2.
- Bước 4: Thơng báo S kết thúc thuật tốn.
(18)- Các hoạt động lặp với số lần chưa biết trước
phụ thuộc vào điều kiện cụ thể dừng lại điều kiện sai
- Trong Pascal câu lệnh lặp với số lần chưa biết trước có dạng:
(19)- Xem trước VD3, VD4, VD5, Lặp vơ hạn lần–Lỗi lập trình cần tránh
- Tìm thêm vài ví dụ hoạt động lặp với số lần chưa biết trước.
(20)