Hãy chỉ ra lỗi và sau đó sửa lỗi trong các câu lệnh sau đây: a) A:=5While A:=5 do A:=A+3; b) S:=O; For i:=1 to 5.5 do s:=s+i; c) m:=O; T:=O; While T<=5 do m:=m+1; T:=T+m; d) T:=O; For i:=6 to 1 do T:=T*i;
1 câu trả lời
a) sai:
- chỗ sau 5 không có ;
- điều kiện ko có :
sửa: A:=5; while A=5 do A:=A+3;
b)
sai chỗ giá trị cuối
sửa: S:=0; for i:=1 to 5 do s:=s+i;
c)
thiếu ko có begin end nếu ko có câu lệnh sẽ lặp vô hạn
sửa:
m:=0; T:=0;
while T<=5 do begin
m:=m+1; T:=T+m;
end;
d) sai:
- giá trị đầu và giá trị cuối
- nếu gán 0 cho T chương trình kết thúc sẽ ra 0 ko tính ra được vì đây là phép tính nhân nên phải gán T:=1;
sửa: T:=1; for i:=1 to 6 do T:=T*i;