Hãy nhập câu hỏi của bạn vào đây, nếu là tài khoản VIP, bạn sẽ được ưu tiên trả lời.
A. Sai vì nếu có hai câu lệnh trở lên giữa "while...do" phải có "begin" và "end;".
B. Sai vì S luôn luôn bé hơn 10 (1<10) nên chương trình sẽ ghi S vô hạn ( trừ khi tắt chương trình ).
C.Sai vì n cũng giống lỗi câu B (2<5) nên cũng sẽ lặp vô hạn lần.
Không có câu nào đúng hết.
a) Lỗi: Dư dấu ; sau từ do
b) Lỗi: While i>20 then (sửa: While i>20 do)
c) Lỗi: B=B+2; (sửa: B:=B+2;)
d) Lỗi: dư dấu ; sau từ do
e) Lỗi: S=S*2; (sửa: S:=S*2;)
f) Lỗi: i:=1 (sửa: i:=1;)
a) Thừa dấu hai chấm trong điều kiện;
b) Thiếu dấu hai chấm trong câu lệnh gán;
c) Thiếu các từ khóa begin và end trước và sau các lệnh n:=n+1; S:=S+n, do đó vòng lặp trở thành vô tận.
B1: Trong các hoạt động sau đây hoạt động nào là hoạt động lặp với số lần chưa biết trước:
A. tính tổng các số tự nhiên từ 1 đến 20.
B. Nhập các số nguyên cho đến khi đủ 50 số
C. Mỗi ngày tập TD 2 lần
D. Nhập dữ liệu từ bàn phím cho đến khi nhập xong dữ liệu khi dừng
B2: Đoạn lệnh sau đây in ra kết quả gì?
s:=0; while s<10 do begin s:=s+1;
Writeln(s); end;
A. In ra các số từ 1 đến 9.
B. In ra các số từ 1 đến 10.
C. In ra các số 1.
D. Không có đáp án đúng.
B3: Hãy cho biết đâu là đoạn lệnh lặp bằng câu lệnh While...do để tính tổng S=1+2+...+10?
A. S:=0; while i<10 do S:=S+i;
B. S:=0; i:=0; while i<11 do begin S:=S+i; i:=i+1; end;
C. S:=0; i:=1; while i do S:=S+i; i:=i+1;
D. S:=0; i:=0; while i<=10 do begin S:=S+i; i:=i+1; end;
a) X:= 5(;) while X <= 5(;) do X:= X + 5;
----> lỗi sai: Thừa 2 dấu ';' ở sau while và ở sau do (lỗi sai trong ngoặc)
----> sửa lại :X:= 5 while X <= 5 do X:= X + 5;
b) X= 10; while X = 10 do X:= X + 5;
----> lỗi sai : Sai lệnh gán X=10.
----> sửa lại : X:= 10; while X = 10 do X:= X + 5;
c) S:= 0; n:=0; while S <= 10 do S:=S + n ; n:=n+1;
Về cấu trúc không sai nhưng để như vậy sẽ thành vòng lặp vô hạn.
----> lỗi sai : thiếu begin ... end; ở sau câu lệnh lặp
----> sửa lại : S:= 0; n:=0; while S <= 10 do begin S:=S + n ; n:=n+1; end;
a) 2 lỗi
- thiếu do
- vòng lặp for tuyệt đối không có ;
b: sau writeln('A') không có chấm phẩy
c: sai chỗ y:=10
phải là y=10 mới đúng
d: sử dụng 2 chấm phẩy là sai
sau while do nếu có từ 2 lệnh trở lên phải bao bọc trong begin end
e: thiếu dấu : sau i, đi từ 100 tới 20 là sai,
phải là for i:=100 downto 20 do mới đúng
f: không sai
Bài 1: S=15
Bài 2: S=17
Bài 3:
1)X:=10; while X:=10 to X:(thiếu dấu '=') X+5;
2) X:=10; while X = 10 do X(thiếu dấu ';') =X+5 (thiếu dấu ';')
3) S:=0; n:=0; while S <= 10 do (thiếu 'begin') n:(thiếu dấu '=')n+1 ,(để kết thúc đoạn lệnh dùng dấu ';' không phải dấu ',') S:= S+n; (thiếu end;)
Không có câu nào đúng.
A. Đúng theo cách trình bày nhưng thiếu dẫn đến vòng lặp vô hạn. Phải ghép 2 câu lệnh sau do lại bằng begin ... end;.
B. Sai vè sau while lại là 1 phép gán S:=10
C. Sai, vì sau do câu lệnh lại là 1 điều kiện a=b. Và đây cũng là 1 vòng lặp vô hạn