You are on page 1of 17

C¸c c©u lÖnh dạng tiến sau cã hîp lÖ kh«ng? v× sao ?

For i:=100 to 1 do Write(‘A’);

TL : kh«ng hîp lÖ, v× gi¸ trÞ ®Çu lín h¬n gi¸ trÞ cuèi

For i:=1.5 to 10.5 do Write(‘A’);


TL : kh«ng hîp lÖ, v× gi¸ trÞ ®Çu, gi¸ trÞ cuèi lµ d÷ Thực hiện theo điều kiện
liÖu kiÓu sè thùc

For i:=1 to 10 do Write(‘A’);


Begin
Ghép nhiều câu lệnh
TL : Hîp lÖ, kết quả : AAAAAAAAAA

For i:=10 to 12 do Write(‘A’);


TL : Hîp lÖ, kết quả : AAA
Yêu cầu 1: Yêu cầu 2:

S= 1 + 2 + 3 + ... + 10 S= 1 + 2 + 3 + ... + N cho


đến khi S>1000
PHIẾU HỌC TẬP SỐ 1

1. Việc cộng vào tổng S được thực hiện bao nhiêu


lần?
2. Điều kiện dừng?

3. Đây là bài toán lặp với số lần đã biết trước hay


chưa biết trước? Thực hiện theo điều kiện

Begin
Ghép nhiều câu lệnh
ĐÁP ÁN

Yêu cầu 1: Yêu cầu 2:


1 .Việc cộng vào tổng S 1 .Việc cộng vào tổng S
được thực hiện: 10 lần. được thực hiện: chưa biết
2. Điều kiện dừng: thực hiện số lần là bao nhiêu.
cộng 10 lần. 2. Điều kiện
Thực hiệndừng:
theo điềuS>1000
kiện
3. Đây là bài toán lặp với số 3. Đây là bài toán lặp với
lần đã biết trước. số lần chưa biết trước .
Begin
Ghép nhiều câu lệnh
Bài 10
Trong các hoạt động dưới đây, hoạt động nào là
hoạt động với số lần chưa biết trước?

1. Nam làm bài tập cho đến khi làm xong.

2. Tính tổng các số tự nhiên từ 1 đến 20.

3. Tôi phải nhập dữ liệu vào máy tính


cho đến khi nhập xong.
4. Mỗi ngày học bài 2 lần

5. Các bạn học sinh tham gia nhặt rác


ở công viên.
3. LẶP VỚI SỐ LẦN CHƯA BIẾT TRƯỚC
VÀ CÂU LỆNH WHILE-DO

* Nhận biết bài toán lặp với số lần chưa biết trước

1. Nam làm bài tập cho đến khi làm xong.

2. Tôi phải nhập dữ liệu vào máy tính


cho đến khi nhập xong.
3. Các bạn học sinh tham gia nhặt rác
ở công viên.
Hoạtđộng
Hoạt độngsẽnào
kếtđược lặp lại?
thúc khi
nào?
3. LẶP VỚI SỐ LẦN CHƯA BIẾT TRƯỚC
VÀ CÂU LỆNH WHILE-DO

* Cách viết và sử dụng vòng lặp while - do

While < điều kiện> do <câu lệnh>;


3. LẶP VỚI SỐ LẦN CHƯA BIẾT TRƯỚC
VÀ CÂU LỆNH WHILE-DO

Sai
Điều kiện

Đúng

Thoát

Câu lệnh
3. LẶP VỚI SỐ LẦN CHƯA BIẾT TRƯỚC
VÀ CÂU LỆNH WHILE-DO

* Cách viết và sử dụng vòng lặp while - do

Hoạt động:
B1: Kiểm tra điều kiện
B2: Nếu điều kiện ĐÚNG, thì thực hiện câu lệnh và quay lại B1.
Ngược lại, câu lệnh sẽ bị bỏ qua và việc thực hiện lệnh lặp kết thúc.
PHIẾU HỌC TẬP SỐ 3

Hãy chỉ ra lỗi trong các câu lệnh sau?

A) X:=10;
While x:=10 do x:=x+5;

X:=10;
B) Thực hiện theo điều kiện
While x=10 do x=x+5;

Begin S:=10; N:=0; Ghép nhiều câu lệnh


C)
While S<=10 do
n:=n+1;
S:=S+n;
PHIẾU HỌC TẬP SỐ 3

Hãy chỉ ra lỗi trong các câu lệnh sau?

A) X:=10; Thừa dấu :


While x:=10 do x:=x+5;

X:=10;
B) Thực hiệnThiếu dấukiện
theo điều :
While x=10 do x=x+5;

Begin S:=10; N:=0;


C)
While S<=10 do Thiếu từ khóa
n:=n+1; begin và end;
S:=S+n;
Tính tổng S cho đến khi
S>1000. Cho biết N.

THUẬT TOÁN
B1: Khởi tạo S=0; N=0;
B2: Nếu S<=1000 thì thực hiện tăng N thêm 1 đơn
vị, ngược lại chuyển B4;
B3: Cộng N vào S rồi chuyển sang B2;
B4: In kết quả:
+ N là số tự nhiên nhỏ nhất sao cho S>1000, Tổng
S và kết thúc.
PHIẾU HỌC TẬP SỐ 4

Từ các bước của thuật toán hãy chuyển thành các


câu lệnh tương ứng trong chương trình pascal và
có sử dụng câu lệnh while...do.

Thực hiện theo điều kiện

Begin
Ghép nhiều câu lệnh
Tính tổng S cho đến khi
S>1000. Cho biết N.

THUẬT TOÁN CHƯƠNG TRÌNH


B1: Khởi tạo S=0; N=0; S:=0; N=:0;
B2: Nếu S<=1000 thì While S<=1000 do
thực hiện tăng N thêm 1 begin
đơn vị, ngược lại N:=N+1;
chuyển B4; S:= S+N;
B3: Cộng N vào S rồi end;
chuyển sang B2; Writeln(‘so N nho nhat de
B4: In kết quả: tong s>1000 la: ’,N);
+ N là số tự nhiên nhỏ Writeln(‘gia tri cua tong
nhất sao cho S>1000, S = ’,S);
Tổng S và kết thúc
Hãy tính giá trị S của đoạn lệnh sau:
S:=0;
i:=1;
While(i<5) do
Begin
S:=S+i;
i:=i+1;
End;

You might also like