4. Câu hỏi bài tập:
4.1/ Tìm hiểu câu lệnh lặp dưới đây và cho biết khi kết thúc câu
lệnh giá trị của biến S và biến n bằng bao nhiêu?
S:=0; n:=0;
While S<=10 do
Begin
n:=n+1;
S:=S+n;
End;
Trả lời:
Giá trị của biến S sau khi thực hiện
=...............
Giá trị của biến n sau khi thực hiện
=...............
4.2/ Gạch dưới chỗ sai của các câu lệnh sau và viết lại câu lệnh đúng:
a) While X:= 10 do X:= X+1;→............................................................
b) While X > 5 for X:= X-1→ .............................................................
c) While X< 10 do X = 5 ;→.................................................................
d) While X <> 0 ; do X:=X-1;→...........................................................
Sửa lại chương trình
Var a : integer;
Begin
a:=5;
While a<6 do begin
writeln(‘A’);
a := a + 1 ;
end;
end.
5. Bài tập thực hành:
Bài 1: Viết chương trình : “BAI8B1” tính tổng của các số tự nhiên liên
tiếp cho đến khi tổng lớn hơn 1000 thì dừng. Cho biết tổng tìm được và
con số cuối cùng được cộng vào:
Hướng dẫn Chương trình
1. Khai báo tên chương trình
2. Khai báo thư viện
3. Khai báo biến: S,n : số nguyên
4. Bắt đầu chương trình
5. Xóa màn hình
6. Gán S 0;n 1;
7. Trong khi S<=1000 thực hiện:
bắt đầu
SS+n
n n+ 1
kết thúc
8. In ra tổng S
9. In ra số n cuối cùng được cộng
10. Tạm dừng chương trình
11. Kết thúc chương trình
1....................................................................
2....................................................................
3....................................................................
4....................................................................
5....................................................................
6....................................................................
7....................................................................
......................................................................
......................................................................
......................................................................
......................................................................
8....................................................................
9....................................................................
10..................................................................
11..................................................................
Hãy tìm hiểu các cụm câu lệnh sau đây và cho biết với các câu lệnh đó chương trình thực hiện bao nhiêu vòng lặp? Hãy rút ra nhận xét của em.
a)
S:=0; n:=0;
while S<=10 do
begin n:=n+1; S:=S+n end;
b)
S:=0; n:=0;
while S<=10 do
n:=n+1; S:=S+n;
Câu 17. Hãy cho biết chương trình dưới đây sẽ thực hiện bao nhiêu vòng lặp khi thực hiện đoạn chương trình n:=16; T:=T -n; end;
A.2 B.3 C.4 D.5
Câu 18: Cho đoạn chương trình sau:
S:=10; x:=0,5;
While >=6,2 do
S:=S-x;
Hãy cho biết giá trị của S sau đoạn chương trình trên:
A. 5 B. 4 C.6 D.7
Câu 19. Sau khi thực hiện đoạn chương trình sau:
j:=0; s:=1;
for i:=1 to 3 do
j:=j+1;
s:=j+1;
Gía trị của biến j, biến s bằng?
A. j=4, s=3 B.j:=3; s=4 C.j:=1; s=2 D.j:=2; s:=3
Câu 21. Gỉa sử có dòng lệnh :
for i:=0 to 9 do
a:=1+i;
Số lần lặp của lệnh gán a:=1+i là:
A.11 B.0 C.10 D.9
1, Hãy nêu sự khác biệt giữa câu lệnh lặp while ... do và âu lệnh lặp for ... do.
2, Sau khi tực hiện đoạn chương trình thì S = ?
S : =0 ; n : =0 ;
while S <= 10 do
begin n := n+1 ; S :=S+n end;
Câu 1: Thực hiện đoạn chương trình sau, giá trị S là bao nhiêu
S:=0;
For i:=1 to 4 do S:=S+i;
Câu 2: Thực hiện đoạn chương trình sau, chữ xin chao được in ra màn hình mấy lần
n:=1;
while n<4 do
begin n:=n+1; writeln('xin chao')end;
Câu 3: So sánh cấu trúc lệnh lặp for...to..do và cấu trúc lệnh lặp while...do
Câu 3. cho đoạn chương trình sau :
S:=1; n:=0;
While S<=5 do
Begin
n:=n+1;
S:=S+n;
End;
Hãy cho biết giá trị của S bằng bao nhiu?
A.6 B.7 C.8 D.9
câu 4. Đọan chương nào sai:
A. Var x, y :real while (x=3.5) do y:=y+1; end.
B.Var x,y :real while (x<3.5) do y:=y+1 ; end.
C. Var x,y :real while (x:=3.5) do y:=y+1 ;end.
D.Var x,y :real while (x >3.5 ) do y:=y+1 ;end.
câu 5:Sau khi thực hiện đoạn chương trình sau:
j:=1;
for i:=1 to 4 do
j:=j+2;
Gía trị của biến bằng bao nhiu:
A.7 B.8 C.9 D.10
Câu 6: Đoạn lệnh sau đây cho biết kết quả nào?
var i: byte;
i:= 5;
While i<=5 do
Begin
Write(i:2);
i:= i-1;
end;
a.In ra các số từ 1 đến 5; b.In ra các số từ 0 đến 5;
c.In ra các số lần lượt từ 5 đến 0; d. In ra vô hạn các số5, mỗi số trên một dòng.
Câu 7:Đoạn lệnh sau đây cho biết kết quả nào?
Var so: byte:
so:= 1;
While so<10 do writeln(so);
so:=so+1;
a.In ra các số từ 1 đến 9; b.In ra các số từ 1 đến 10;
c.In ra vô hạn các số1, mỗi số trên một dòng. d.In ra các số từ 10 đến 1.
Câu 8:Cho đoạn chương trình sau:
Var x, tong : byte;
x:=0; tong:=0;
While tong <= 20 do
Begin
Writeln(tong);
tong:=tong +1;
End;
x:=tong;
Sau khi đoạn chương trình trên được thực hiện, giá trị của x bằng bao nhiêu?
a.20. b. 21. c. Không xác định. d. 0.
Câu 9: Hãy cho biết kết quả của đoạn chương trình dưới đây?
a:=10;
While a< 11do writlen(a);
a.Trên màn hình xuất hiện một số 10.
b.Trên màn hình xuất hiện 10 chữ.
c.Trên màn hình xuất hiện vô số chữ số10,chương trình bị lặp vô tận.
d.Trên màn hình xuất hiện một số 11.
Câu 14:Hãy tìm hiểu các thuật toán sau đây và cho biết khi thực hiện thuật toán, máy tính sẽ 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? Viết chương trình Pascal thể hiện các thuật toán đó.
a) Thuật toán 1:
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.
b) Thuật toán 2:
Bước 1. S ←10, n ← 0.
Bước 2. Nếu S ≥ 10, chuyển tới bước 4.
Bước 3. n ← n+3, S ← S-n và quay lại bước 2.
Bước 4. Thông báo S và kết thúc thuật toán.
Câu 15: Hãy tìm hiểu mỗi đoạn chương trình Pascal sau đây và cho biết với đoạn lệnh đó chương trình thực hiện bao nhiêu vòng lặp. Hãy rút ra nhận xét của em.
a)S:=0;n:=0;
while S <=10 do
begin n:=n+1;S:=S+n end;
b)S:=0;n:=0;
while S >=10 do
n:=n+1; S:=S+n;
Câu 16: Sử dụng cấu trúc lệnh While ...do để viết chương trình tính tổng của các số tự nhiên liên tiếp bé hơn 20.
Câu 17: Sử dụng cấu trúc lệnh While ...do để viết chương trình tính tích của các số tự nhiên liên tiếp từ 1 đến n.
giúp với nhé, mình cảm ơn nhiều lắm ^-^