B1:
Var a : integer; b:real;
Const c=300;
Begin
a:=100;
b:=c/a
Writeln('Gtri B luc nay= ', b;
End.
B2:
a) Input: Dãy N cho trước
Output: Tính tổng của các phần tử lớn hơn 0 trong dãy N
b) Input: Dãy N cho trước
Output: Số các số có giá trị nhỏ nhất trong dãy N
B3:
a) Đúng vì 120 chia 5 bằng 24
b) Sai vì nếu $c^{2}=a^{2}+b^{2}$ thì đó mới là một Δvuông
c) Sai do 152<200. Hoặc nếu là $15^{2}$ thì $15^{2}>200$ vì kết quả của $15^{2}$ = 225>200 nên đây là phép so sánh đúng.
d) Hoặc đúng nếu -1 < x < 1;
Hoặc sai nếu x ≤ 1 hoặc x ≥ 1.
B4:
Sai: Ý a,b,e
Đúng: Số còn lại
*Nếu cần giải thích thì hãy comment bên dưới!
B5
a) Vì 45 chia hết cho 3 nên giá trị x lúc này được tăng thêm 1 đơn vị tức x=11.
b) Vì x=10. Mà điều kiện cho là x>10 nên x vẫn được giữ nguyên.
B6:
Trong các câu lệnh writeln không có dấu " ‘ " mà chỉ có " ' " nên sai. Mặt khác, phải đổi điều kiện "a<b và writeln('a<b')" sang "write('a=b'); Nếu không có các cách khắc phục trên, câu lệnh ghép này sẽ sai.
B7:
a) Sai ở chỗ giá trị cuối không được cho là kiểu thập phân, mà chỉ có kiểu nguyên dương. Dấu nháy trong () sai.
b) Đúng
c) Sai do Gtri đầu và Gtri cuối phải ∈ kiểu nguyên dương. Mặt khác, nếu trong writeln() mà thuộc kiểu dòng chữ thì phải có 2 dấu nháy để máy hiểu đây là dòng câu lệnh chữ.Còn nếu đây là phép gán tổng thì phải là: "s:=s+i" rồi sau đó mới thêm writeln(s) để in kết quả s
d) Sai do nếu đây là một phép lặp chạy ngược từ 1000-> 10 thì phải là: "For i:=1000 downto 10 do writeln(i);". Hoặc không thì máy sẽ hiểu là sai do for..do chạy phải có gtri đầu nhỏ hơn hoặc bằng gtri cuối.
B8:
Chương trình pascal này sai. Do sau For..do không có câu lệnh mà lại có " ; "
B9: Tự làm
B10:
a) Sau while..do là một phép so sánh, chứ không phải lệnh gán.
b) Sai do đây là một câu lệnh lặp với số lần chưa biết trước, phải có "begin" và "end;" sau while...do
c) Sai do sẽ rơi vào vòng lặp vô hạn. Vì điều kiện luôn đúng, không sai.
d) Sau "M:=0" không có ";" . Mặt khác, chỉ có while..do chứ không có while..then.
B11:
Uses Crt;
Var a:array[1..1000] of integer;
i,n:integer;
Begin
Clrscr;
Write('Nhap do dai N='); Readln(n);
For i:= 1 to n do
Begin
Write('Nhap a[',i,']='); Readln(a[i]);
End;
Readln
End.
B12:
a) Sai do Trong array[] không có " ,, ".
b) Sai do thừa 3 dấu "." trong ngoặc [].
c) Các chỉ số phần tử không thuộc kiểu thập phân mà chỉ thuộc kiểu nguyên dương.
d) Như ý trên.
e) Chỉ số đầu phải nhỏ hơn chỉ số cuối trong [] khi khai báo mảng.