Câu 3: Câu lệnh Pascal sau đúng hay sai ? Hãy chỉ ra lỗi sai nếu có a.For i:=2 to 10; do x:=x+1; b.For i:=11 to 1 do x:=x+1; c.For i:=1 to 10 for j:=1 to 10 do x:=x+1 d.For i:=1 to 10 do for i:=1 to 10 x:=x+1 e.While b>=a;do write ( `b l=khong nho hon a’); g.While 2=2 di write (`toi that la gioi’); Giải:
2 câu trả lời
a) sai, dư dấu ; sau giá trị cuối
sửa: for i:=2 to 10 do x:=x+1;
b) sai, giá trị cuối lớn hơn giá trị đầu
sửa: for i:=1 to 11 do x:=x+1;
c) sai cú pháp for-do đầu(thiếu do)
sửa: for i:=1 to 10 do for j:=1 to 10 do x:=x+1;
d) sai, 2 vòng lặp trùng biến đếm
sửa: FOR i:= 1 to 10 do for j:= 1 to 10 do x := x+1 ;
e)sai, sau điều kiện bị dư dấu ;
sửa: while b>=a do write('b khong nho hon a');
g) sai, điều kiện luôn đúng nên sẽ lặp vô hạn lần
sửa: i:=2; while i=2 do begin write (' toi that la gioi'); i:=i+1; end;
${Oken}$
a. Sai vì sau giá trị cuối không được có dấu ;
b. Sai vì giá trị đầu không được lớn hơn giá trị cuối
c. Sai vì khi kết thúc câu lệnh không có dấu ;
d. Sai vì khi kết thúc câu lệnh không có dấu ;
biến đếm ở hai câu lệnh lặp không được giống nhau
e. Sai vì sau điều kiện không được có dấu ;
g. Sai vì điều kiện và từ khóa không đúng
Học tốt!