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.
III:
A: var a:array[1..50]of real;
B: a[5]:=8;
C: var a:array[1..50]of integer;
D: readln(dem[2]);
a) sai chỗ x:=100 và thiếu ;
Sửa lại: if x=100 then x:=x+1;
b) Dấu gán sai(thiếu dấu hai chấm)
Sửa lại: if a<b then max:=b;
c) Sai chỗ trước else(bởi nguyên tắc là trước else không bao giờ có;)
Sửa lại: if a>b then max:=a else max:=b;
d) Dấu gán sai(thiếu dấu hai chấm)
Sửa lại: if a>b then max:=a else max:=b;
a,sai chấm phẩy ở cuối câu
if x:=100 then x:=x+1;
b, thiếu hai chấm ở phần gán max = b
if a<b then max:=b;
c, thừa dấu hai chấm ở trước else
if a>b then max:=a else max:=b;
d, thiếu dấu hai chấm ở phần gán max=a
if a>b then max:=a else mã:=b
a) Var X : Array [1;50] of integer; (sai cách khai báo mảng)
-> Var X : Array [1..50] of integer;
b) Var X : Array [5..50.5] of real; (sai vì chỉ số là số thực)
-> Var X : Array [5..50] of real;
c) For i: 1,5 to 10 do write ('A'); (sai vì giá trị đầu là số thực)
-> For i: 1,5 to 10 do write ('A');
d) For i: 1 to ; 10 do write ('A'); (sai vì sau to có dấu ; và sau i: thiếu dấu =)
->For i:= 1 to 10 do write ('A')
e) While x:=10 do x:=x+5; (điều kiện sai, đây là phép gán không phải điều kiện)
-> While x=10 do x:=x+5;
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) 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: Bỏ chữ then
b: Thiếu dấu ngoặc và dấu chấm phẩy sau cùng
c: Bỏ dấu ; trước chữ else
Sửa lại như vầy:
a) a:=5;
While a < 10 do
a:=a + 1;
b) for i:=1 to 10 do write('ABC');
c) If x > 5 then x:=x + 1
Else x:=x - 1;
a) a:=5; while a<10 a then a:=a+1
- Lỗi: nếu là câu lệnh lặp while do nên sửa then thành do; nếu là câu lệnh if...then thì đổi while thành if
- Thiếu ; khi kết thúc lệnh gán
Sửa:
a:=5; while a<10 do a:=a+1; hoặc a:=5; if a<10 do then a:=a+1;
b) for i=1 to 10 do write('ABC'
- Lỗi:
Sai cấu trúc vòng lặp for..do vì thiếu dấu ':', cấu trúc là for <biến đếm>:=<GT đầu> to <GT cuối> do <câu lệnh>;
Lệnh in thiếu dấu đóng ngoặc
Kết thúc câu lệnh thiếu dấu ';'
Sửa: for :i=1 to 10 do write('ABC');
c) If x>5 then x:=x+1; else x:=x-1
Lỗi:
Câu lệnh điều kiện đủ nên không được chứa dấu ';' để kết thúc câu lệnh khi đang ở điều kiện dạng thiếu
Thiếu ';' khi kết thúc câu lệnh
Sửa: If x>5 then x:=x+1 else x:=x-1;