Tải bản đầy đủ (.ppt) (25 trang)

lặp với số lần chưa biết

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.24 MB, 25 trang )

Bình Dương, ngày 21 tháng 02 năm 2013
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
và cho ví dụ?


Câu hỏi
Cú pháp:
For <biến đếm>:=<giá trị đầu> to <giá trị cuối> do
<câu lệnh>;
VD: For i:= 1 To 4 Do
Writeln(‘Day la so lan lap thu: ‘ ,i);
VD1: Viết chương trình
tính tổng các số tự
nhiên từ 1 đến 100
S = 1 + 2 + 3 + . . .+100
Laëp 99 laàn
VD2: Viết chương trình
nhập vào các số cho
đến khi gặp 0 thì dừng
lại. Tính tổng các số
vừa nhập.
Ch a bi t l p m y l nư ế ặ ấ ầ


!"#$
%
$
!"#$&


'%()()*!+)(,-
./012!3*1!+4)-
Các em hãy cho thêm những
ví dụ về 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:
5/2*6)(718!
+*,-

VD1
VD19:+;<
Long sẽ lặp lại hoạt
động gọi điện mấy 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 được. Điều
kiện để kết thúc hoạt động lặp
đó là có người nhấc máy.
=3)1+7Long >1!?@AB
CD!(3Trang!+)E
F0(71-

VD2
VD29:+;
:
:
1. Các hoạt động lặp với số lần chưa biết trước:
Đ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 T
n
nhỏ
nhất lớn hơn 1000 thì kết
thúc hoạt động lặp
tăng dần

1. Các hoạt động lặp với số lần chưa biết trước:
n Tổng T
n
Điều kiện T
n
≤ 1000
1
T
1
= 1 Đúng
2 T
2
= 1 + 2 Đúng
Đúng
… … …
?
T
n
= 1 + 2 + 3 + … +?
(Sao cho 5


nhỏ nhất

lớn hơn 1000)
Sai, kết thúc việc tính
tổng
3 T
3
= 1 + 2 + 3
G8)7<
S ← 0, n ← 1.
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 tốn.
1. Các hoạt động lặp với số lần chưa biết trước:
H8S)I$()%E*7%<
.7J!3
%phụ thuộc vào
cái gì )Kdừng lại khi nào&
* Có thể diễn tả bài tốn
trên bằng sơ đồ như sau:
S≤1000?
Sai
n ← n+1;
S ← S+n;
Đúng

2. Ví d v l nh l p vôùi soá laàn chöa bieát tröôùc:ụ ề ệ ặ
VD1:LM%NO%<O%PAQ

5!E<Whiledo)7R+E%-
Điều kiện ) %NO9@%S7;-

Câu lệnh)%<O%PA9T
U
!#;-
2. Ví d v l nh l p vôùi soá laàn chöa bieát tröôùc:ụ ề ệ ặ
VD2:LM%V
WM
XM9Y%VZ;Q
%<O%AQ
[Q

5!E<Whiledo)7R+E%-
Điều kiện ) %V9@%S7;-
Câu lệnh)LM9Y%VZ;)%<O%A9T
U
S;-
2. Ví d v l nh l p vôùi soá laàn chöa bieát tröôùc:ụ ề ệ ặ
Trong Pascal câu lệnh lặp
với số lần chưa biết trước
có dạng như thế nào?
2. Ví d v l nh l p vôùi soá laàn chöa bieát tröôùc:ụ ề ệ ặ
Cú pháp:
While <Điều kiện> Do <Câu lệnh>;
Trong đó:

Điều kiện: Thường là một phép so sánh;

Câu lệnh: Có thể là câu lệnh đơn hoặc là câu
lệnh ghép.

2. Ví d v l nh l p vôùi soá laàn chöa bieát tröôùc:ụ ề ệ ặ

Câu lệnh lặp While … Do được thực hiện như sau:
B1: Kiểm tra Đk;
B2: Nếu Đk sai câu lệnh sẽ bị bỏ
qua và kết thúc vòng lặp.
B3: Ngược lại, nếu Đk đúng thì
thực hiện câu lệnh và quay lại
bước 1.
Điều kiện?
Câu lệnh
Sai
Đúng

2. Ví d v l nh l p vôùi soá laàn chöa bieát tröôùc:ụ ề ệ ặ
VD1:LM%NO%<O%PAQ

5!E<Whiledo)7R+E%-
Điều kiện ) %NO9@%S7;-
Câu lệnh)%<O%PA9T
U
!#;-

2. Ví d v l nh l p vôùi soá laàn chöa bieát tröôùc:ụ ề ệ ặ
VD2:LM%V
WM
XM9Y%VZ;Q
%<O%AQ
[Q

5!E<Whiledo)7R+E%-
Điều kiện ) %V9@%S7;-

Câu lệnh)LM9Y%VZ;)%<O%A9T
U
S;-

VD: \While … Do!"#$"
*7]8^9:+;
2. Ví d v l nh l p vôùi soá laàn chöa bieát tröôùc:ụ ề ệ ặ
var S,n: integer;
Begin
S:=0; n:=1;
while S<=1000 do
begin
S:=S+n ; n:=n+1;
end;
write(‘So n nho nhat de tong >1000 la ’, n);
Writeln(‘Tong dau tien >1000 la ‘, s);
Readln;
End.
So n nho nhat de tong >1000 la 46
Tong dau tien >1000 la 1035
Học sinh thảo luận theo nhóm (1 dãy bàn là 1 nhóm)
Học sinh thảo luận theo nhóm (1 dãy bàn là 1 nhóm)
-

Có 4 câu hỏi. Mỗi nhóm chỉ được phép chọn 1 câu hỏi, nhóm
chọn câu hỏi, cử đại diện đứng lên đọc đề. Sau đó tất cả các
nhóm cùng thảo luận.
-
Cách thức trả lời:

+ Nếu câu hỏi trắc nghiệm: tất cả các nhóm có quyền trả lời.
+ 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.
Caâu 1
Caâu 2
Caâu 3
Caâu 4
A
A
58I7_TRA!^B-
B
B
'*71TR)8(!+!`aB-
D
D
'*)A!+*))b$R-
C
C
=c)1D)^-
dB^e^f^g^h^a^i
^d
^^^A^BAeAfAgAhAaAiAdA^AAABefghaid^AB
Câu 1: Trong các hoạt động dưới
đây, hoạt động nào là hoạt động lặp
với số lần chưa biết trước?
a) X:= 10; while X:= 10 do X:= X + 5;
b) X:= 10; while X = 10 do X = X + 5;
c) S:= 0; n:=0; while S <= 10 do n:= n + 1; S:= S + n ;
Thừa dấu :
Thiếu

dấu :
Thiếu Begin
Thiếu End
Câu 2: Hãy chỉ ra lỗi trong các câu lệnh sau đây?
dB^e^f^g^h^a^i
^d
^^^A^BAeAfAgAhAaAiAdA^AAABefghaid^AB
In ra các số từ 1 đến 9
In ra các số từ 1 đến 9
In ra các số từ 1 đến 10
In ra các số từ 1 đến 10
In ra các số 1
In ra các số 1
Không phương án nào đúng.
Không phương án nào đúng.
A
A
B
B
C
C
D
D
Câu 3: Đoạn lệnh sau đây cho kết quả là gì?
S:=1; While s < 10 do
Begin writeln(s); s:=s+1; end;
dB^e^f^g^h^a^i
^d
^^^A^BAeAfAgAhAaAiAdA^AAABefghaid^AB
B. 10 vòng lặp, S=5

D. 12 vòng lặp, S=4
B. 10 vòng lặp, S=5
A. 9 vòng lặp, S=5.5 C. 11 vòng lặp, S=4.5
SAI RỒI!
SAI RỒI!
SAI RỒI!
Câu 4: Thuật toán sau thực hiện bao nhiêu vòng lặp?
Khi kết thúc, giá trò của S bằng 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 và quay lại bước 2.
- Bước 4: Thông báo S và kết thúc thuật toán.
dB^e^f^g^h^a^i
^d
^^^A^BAeAfAgAhAaAiAdA^AAABefghaid^AB
- 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 một vài ví dụ về hoạt động lặp với
số lần chưa biết trước.
- Về nhà học bài. Làm bài tập 2 Sgk trang 71.

×