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.
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
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) 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) 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;
Bài 1:
a) Câu lệnh While i:=1 do sai.
Sai ở chỗ i:=1(vì có dấu gán)
b) Câu lệnh While a<=b; do sai
Sai ở chỗ có dấu chấm phẩy trước chữ do
Câu lệnh write('b khong nho hon a); sai
Sai ở chỗ vì thiếu dấu ' sau chữ a
c) Câu lệnh While 1=1 do sai
Vì nếu như vậy đây sẽ là vòng lặp vô hạn(vì 1 luôn bằng 1)
Câu lệnh write('Toi lap trinh gioi); sai
Sai ở chỗ thiếu dấu ' sau chữ gioi
d) Câu lệnh sum:=sum+1; i:=i+1; sai
Vì nguyên tắc là sau lệnh While(hoặc lệnh For) thì nếu làm nhiều câu lệnh thì phải bao bọc trong Begin End
Bài 2:
uses crt;
var a,b:real;
begin
clrscr;
repeat
write('a='); readln(a);
if a<=0 then writeln('vui long nhap lai a');
until a>0;
repeat
write('b='); readln(b);
if b<=0 then writeln('vui long nhap lai b');
until b=0;
writeln('dien tich hinh chu nhat la: ',a*b:4:2);
readln;
end.
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.
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.