ĐỀ 1
Câu 1 (3 điểm): Hãy chỉ ra sáu lỗi sai khi thực hiện lệnh biên dịch trong
chương trình sau:
Program Bai_tap1; {*dong 1*}
Var x, i = byte; {*dong 2*}
Begin {*dong 3*}
x : 0; {*dong 4*}
for i : 1 to 10 do {*dong 5*}
begin {*dong 6*}
x : x + 1; {*dong 7*}
write(x) {*dong 8*}
if i = 5 then i : 10; {*dong 9*}
End; {*dong 10*}
Readln; {*dong 11*}
End. {*dong 12*}
Câu 2 (2 điểm): Cấu trúc REPEAT – UNTIL để làm gì? Nó khác với cấu
trúc WHILE – DO như thế nào?
Câu 3 (5 điểm) Viết chương trình tìm ước chung lớn nhất của hai số nguyên
không âm M và M với điều kiện M và N không đồng thời bằng 0
------HẾT------
ĐỀ 2
Câu 1 (3 điểm): Hãy chỉ ra sáu lỗi sai khi thực hiện lệnh biên dịch trong
chương trình sau:
Program Bai_tap1; {*dong 1*}
Var x, i : byte; {*dong 2*}
Begin {*dong 3*}
x = 0; {*dong 4*}
for i = 10 downto 1 do {*dong 5*}
begin {*dong 6*}
x = x + 1; {*dong 7*}
write(x); {*dong 8*}
viết chương trình cho câu lệnh lặp với số lần
chưa biết trước
Cấu trúc REPEAT – UNTIL khác với
cấu trúc WHILE – DO ở chỗ cấu trúc
REPEAT – UNTIL thì đưa câu lệnh trước
trước rồi mới tới điều kiện. Còn cấu trúc
WHILE – DO thì ngược lại. Ngoài ra với cấu
trúc REPEAT – UNTIL thì trong câu lệnh nếu
là lệnh ghép cũng không cần viết trong cặp từ
khóa BEGIN – END còn với cấu trúc WHILE
– DO thì phải viết trong cặp từ khóa BEGIN –
END.
Đề 2
Cấu trúc WHILE - DO dùng để viết
chương trình cho câu lệnh lặp với số lần chưa
biết trước
Cấu trúc WHILE – DO khác REPEAT –
UNTIL với cấu trúc ở chỗ cấu trúc WHILE –
DO thì đưa câu lệnh trước trước rồi mới tới
điều kiện. Còn cấu trúc REPEAT – UNTIL thì
ngược lại. Ngoài ra với cấu trúc WHILE - DO
thì trong câu lệnh nếu là lệnh ghép cần viết
trong cặp từ khóa BEGIN – END còn với cấu
trúc REPEAT – UNTIL thì không phải viết
trong cặp từ khóa BEGIN – END
Câu 3: Đáp án chung cho cả hai đề
Viết đúng chương trình được 5 điểm
Program Bai_tap 3;
Var M, N : longint;
Begin 1 điểm