Bài tập Bài tập 1.1: Viết chương trình tính chu vi và diện tích của hình chữ nhật có chiều dài hai cạnh là a, b được nhập từ bàn phím.. Bài tập 1.2: Viết chương trình tính chu vi, diện
Trang 1ĐỀ CƯƠNG ÔN TẬP TIN HỌC 8
I TRẮC NGHIỆM:
Câu 1: Cú pháp lệnh lặp For – do dạng:
A for < biến đếm> = < Giá trị cuối >downto < Giá trị đầu > do < câu lệnh >;
B for < biến đếm> =: < Giá trị cuối >downto < Giá trị đầu > do < câu lệnh >;
C for < biến đếm> = < Giá trị cuối >down < Giá trị đầu > do < câu lệnh >;
D for < biến đếm> := < Giá trị đầu > to < Giá trị cuối > do < câu lệnh>;
Câu 2: Câu lệnh lặp for…do mỗi lần lặp giá trị của biến đếm thay đổi như thế nào?
A Tăng 1
B Tăng 2
C Tăng 3
D Tăng 4
Câu 3: Kiểu dữ liệu của biến đếm trong lệnh lặp For – do:
A Cùng kiểu với giá trị đầu và giá trị cuối
B Chỉ cần khác kiểu với giá trị đầu
C Cùng kiểu với các biến trong câu lệnh
D Không cần phải xác định kiểu dữ liệu
Câu 4: Trong lệnh lặp For – do: (chọn phương án đúng nhất)
A Giá trị đầu phải nhỏ hơn giá trị cuối
B Giá trị đầu phải nhỏ hơn hoặc bằng giá trị cuối
C Giá trị đầu phải lớn hơn giá trị cuối
D Giá trị đầu phải bằng giá trị cuối
Câu 5: Lệnh lặp For – do được sử dụng khi: (chọn phương án đúng nhất)
A Lặp với số lần biết trước
B Lặp với số lần chưa biết trước
C Lặp với số lần có thể biết trước
D Lặp với số lần không bao giờ biết trước
Câu 6: Cấu trúc lặp với số lần chưa biết trước:
A while <điều kiện> do ;
B for <điều kiện> do ;
C while do <điều kiện>;
D while not <điều kiện> do
Câu 7: Trong pascal, khai báo nào sau đây đúng?
A.Var tb: Real;
B.Var 4hs: Integer;
C.Const x: Real;
D.Var R=30;
Câu 8: Đại lượng được đặt tên dùng để lưu trữ dữ liệu, có giá trị không đổi trong suốt
quá trình thực hiện chương trình được gọi là:
Trang 2B.Từ khóa
C.Biến
D.Hằng
Câu 9: Câu lệnh nào sau đây dùng để nhập một số từ bàn phím vào biến x?
A.Writeln(‘Nhap x = ’);
B.Writeln(x);
C.Readln(x);
D.Read(‘X’);
Câu 10 Câu lệnh pascal nào hợp lệ?
A for i:= 1 to 5.5 do writeln (‘a’);
B for i:= 1.5 to 5.5 do writeln (‘a’);
C for i:= 1 to 5 do writeln (‘a’);
D for i:= 1 to 5; do writeln (‘a’);
Câu 11: Khai báo sau có ý nghĩa gì? Var a: integer; b: Char;
A.Biến a thuộc kiểu dữ liệu số thực và biến b thuộc kiểu dữ liệu kí tự
B.Biến a thuộc kiểu dữ liệu số nguyên và biến b thuộc kiểu dữ liệu xâu kí tự
C.Biến a thuộc kiểu dữ liệu số nguyên và biến b thuộc kiểu dữ liệu kí tự
D.Các câu trên đều sai
Câu 12: Câu lệnh nào sau đây dùng để nhập một số từ bàn phím vào biến x?
A.Writeln(‘Nhap x = ’);
B.Writeln(x);
C.Readln(x);
D.Read(‘X’);
Câu 13: Trong ngôn ngữ lập trình Pascal, giả sử x:= a/b; thì x phải khai báo kiểu dữ
liệu nào?
A byte
B integer
C word
D real
Câu 14: Trong lệnh lặp For – do: (chọn phương án đúng nhất)
A Giá trị đầu phải là số nguyên hoặc số thực
B Giá trị đầu phải nhỏ hơn giá trị cuối
C Giá trị đầu phải là số thực
D Giá trị đầu giá trị cuối là các giá trị nguyên
Câu 15 Cú pháp lệnh lặp For – do nào sau đây đúng?
A for i := 1 to 8 do s:= s+8;
Trang 3B for i := 1 to; 8 do s:= s+8;
C for i = 4 to 9 do s:= s+8;
D for i := 1.5 to 8.3 do s:= s+8;
Câu 16: Program là từ khoá dùng để:
A Khai báo tiêu đề chương trình
B Kết thúc chương trình
C Viết ra màn hình các thông báo
D Khai báo biến
Câu 17: Trong Pascal, lệnh clrscr được dùng để
A Xóa màn hình
B In thông tin ra màn hình
C Nhập dữ liệu từ bàn phím
D Tạm dừng chương trình
Câu 18: Phần dư trong phép chia của hai số nguyên 16 và 5 là:
A 16 div 5 = 1
B 16 mod 5 = 1
C 16 div 5 = 3
D 16 mod 5 = 3
Câu 19: Trong ngôn ngữ lập trình Pascal, từ không phải từ khóa là:
A Uses
B Program
C End
D Computer
Câu 20: Để nhập dữ liệu ta dùng lệnh
A Clrscr;
B Readln(x);
C X:= ‘dulieu’;
D Write(‘Nhap du lieu’);
Câu 21: Để thực hiện phép tính tổng của hai số nguyên a và b ta thực hiện như sau :
A Tong=a+b;
B Tong:=a+b;
C Tong:a+b;
D Tong(a+b);
Câu 22: If Then Else là:
A Vòng lặp xác định
B Vòng lặp không xác định
C Câu lệnh điều kiện
D Một khai báo
II Tự luận
Trang 4Câu 1 Nêu cú pháp câu lệnh lặp for do, giải thích cú pháp và nêu cách thức hoạt động
2 Bài tập
Bài tập 1.1: Viết chương trình tính chu vi và diện tích của hình chữ nhật có chiều dài
hai cạnh là a, b (được nhập từ bàn phím)
Bài tập 1.2: Viết chương trình tính chu vi, diện tích hình vuông có cạnh a (được nhập
từ bàn phím)
Bài tập 1.3: Viết chương trình tính chu vi và diện tích hình tròn có bán kính r (được
nhập từ bàn phím)
Bài tập 1.4: Viết chương trình tính diện tích của tam giác có ba cạnh là a, b, c (được
nhập từ bàn phím)
Bài tập 1.5: Viết chương trình cho phép tính trung bình cộng của bốn số.
Bài tập 1.6: Viết chương trình cho phép tính trung bình cộng của bốn số với điều kiện
chỉ được sử dụng hai biến
Bài tập 1.7: Viết chương trình cho phép tính trung bình nhân của bốn số với điều kiện
chỉ được sử dụng hai biến
Bài tập 1.8: Viết chương trình nhập hai số, đổi giá trị hai số rồi in ra hai số.
Trang 5Đáp án
ĐỀ CƯƠNG ÔN TẬP TIN HỌC 8
I TRẮC NGHIỆM:
Câu 1: Cú pháp lệnh lặp For – do dạng:
D for < biến đếm> := < Giá trị đầu > to < Giá trị cuối > do < câu lệnh>;
Câu 2: Câu lệnh lặp for…do mỗi lần lặp giá trị của biến đếm thay đổi như thế nào?
A.Tăng 1
Câu 3: Kiểu dữ liệu của biến đếm trong lệnh lặp For – do:
A Cùng kiểu với giá trị đầu và giá trị cuối
Câu 4: Trong lệnh lặp For – do: (chọn phương án đúng nhất)
B Giá trị đầu phải nhỏ hơn hoặc bằng giá trị cuối
Câu 5: Lệnh lặp For – do được sử dụng khi: (chọn phương án đúng nhất)
A Lặp với số lần biết trước
Câu 6: Cấu trúc lặp với số lần chưa biết trước:
A while <điều kiện> do <câu lệnh>;
Câu 7: Trong pascal, khai báo nào sau đây đúng?
A.Var tb: Real;
Câu 8: Đại lượng được đặt tên dùng để lưu trữ dữ liệu, có giá trị không đổi trong suốt
quá trình thực hiện chương trình được gọi là:
D.Hằng
Câu 9: Câu lệnh nào sau đây dùng để nhập một số từ bàn phím vào biến x?
C.Readln(x);
Câu 10 Câu lệnh pascal nào hợp lệ?
C for i:= 1 to 5 do writeln (‘a’);
Câu 11: Khai báo sau có ý nghĩa gì? Var a: integer; b: Char;
C.Biến a thuộc kiểu dữ liệu số nguyên và biến b thuộc kiểu dữ liệu kí tự
Câu 12: Câu lệnh nào sau đây dùng để nhập một số từ bàn phím vào biến x?
C.Readln(x);
Câu 13: Trong ngôn ngữ lập trình Pascal, giả sử x:= a/b; thì x phải khai báo kiểu dữ
liệu nào?
Trang 6D real
Câu 14: Trong lệnh lặp For – do: (chọn phương án đúng nhất)
D Giá trị đầu, giá trị cuối là các giá trị nguyên
Câu 15 Cú pháp lệnh lặp For – do nào sau đây đúng?
A for i := 1 to 8 do s:= s+8;
Câu 16: Program là từ khoá dùng để:
A Khai báo tiêu đề chương trình
Câu 17: Trong Pascal, lệnh clrscr được dùng để
A Xóa màn hình
Câu 18: Phần dư trong phép chia của hai số nguyên 16 và 5 là:
B 16 mod 5 = 1
Câu 19: Trong ngôn ngữ lập trình Pascal, từ không phải từ khóa là:
D Computer
Câu 20: Để nhập dữ liệu ta dùng lệnh
B Readln(x);
Câu 21: Để thực hiện phép tính tổng của hai số nguyên a và b ta thực hiện như sau :
B Tong:=a+b;
Câu 22: If Then Else là:
C Câu lệnh điều kiện
II Tự luận
Câu 1 Nêu cú pháp câu lệnh lặp for do, giải thích cú pháp và nêu cách thức hoạt động (Học sinh tham khảo kiến thức SGK)
2 Bài tập:
Bài tập 1.1: Viết chương trình tính chu vi và diện tích của hình chữ nhật có chiều dài
hai cạnh là a, b (được nhập từ bàn phím)
a Hướng dẫn:
Nhập hai cạnh vào hai biến a, b
Chu vi hình chữ nhật bằng 2*(a+b); Diện tích hình chữ nhật bằng a*b
b Mã chương trình:
Program Chu_nhat;
uses crt;
Var a, b, S, CV: real;
Begin
Write('Nhap chieu dai:'); readln(a);
Write('Nhap chieu rong:'); readln(b);
S := a*b;
CV := (a+b)*2;
Writeln('Dien tich hinh chu nhat la:',S);
Writeln('Chu vi hinh chu nhat la:',CV:10:2);
Trang 7end.
c Nhận xét: Lệnh write cho phép in ra màn hình một hoặc nhiều mục Có thể định dạng được số in ra bằng cách qui định khoảng dành cho phần nguyên, khoảng dành cho phần thập phân
Bài tập 1.2: Viết chương trình tính chu vi, diện tích hình vuông có cạnh a (được nhập
từ bàn phím)
a Hướng dẫn:
Nhập cạnh vào biến canh
Chu vi hình vuông bằng 4*canh; Diện tích hình vuông bằng canh*canh
b Mã chương trình:
Program HINH_VUONG;
uses crt;
Var canh: real;
Begin
clrscr;
Write('Nhap do dai canh:');readln(canh);
Writeln('Chu vi hinh vuong la:',4*canh:10:2);
Writeln('Dien tich hinh vuong la:',canh*canh:10:2);
readln
end.
c Nhận xét: Bài tập 1.2 tiết kiệm được hai biến là CV và S vì lệnh write cho phép in một biểu thức Trong lập trình việc tiết kiệm biến là cần thiết nhưng đôi lúc gây khó hiểu khi đọc, kiểm tra chương trình
Bài tập 1.3: Viết chương trình tính chu vi và diện tích hình tròn có bán kính r (được
nhập từ bàn phím)
a Hướng dẫn:
Nhập bán kính vào biến r
Chu vi đường tròn bằng 2**r
Diện tích hình tròn bằng *r*r
b Mã chương trình:
Program HINH_TRON;
uses crt;
Var r: real;
Begin
clrscr;
Write('Nhap ban kinh:'); readln(r);
Writeln('Chu vi duong tron la:',2*pi*r:10:2);
Writeln('Dien tich hinh tron la:',pi*r*r:10:2);
readln
end.
c Nhận xét: pi là hằng số Một hằng số có thể được người dùng khai báo hoặc do Pascal tự tạo Pi là hằng do Pascal tự tạo nên người dùng không cần khai báo
Trang 8Bài tập 1.4: Viết chương trình tính diện tích của tam giác có ba cạnh là a, b, c (được
nhập từ bàn phím)
a Hướng dẫn:
Nhập ba cạnh của tam giác vào ba biến a, b, c
Nửa chu vi của tam giác p = (a+b+c)/2
b Mã chương trình:
Program TAM_GIAC;
uses crt;
Var a,b,c,p,S: real;
Begin
clrscr;
Write('Nhap canh a:');readln(a);
Write('Nhap canh b:');readln(b);
Write('Nhap canh c:');readln(c);
p:=(a+b+c)/2;
S:= sqrt(p*(p-a)*(p-b)*(p-c));
Write('Dien tich tam giac la:',s:10:2);
readln
end
b Nhận xét: Ở đây ta lại hai lần dùng biến trung gian p, s để chương trình sáng sủa, dễ theo dõi
Bài tập 1.5: Viết chương trình cho phép tính trung bình cộng của bốn số.
a Hướng dẫn:
Nhập bốn số vào bốn biến a, b, c, d
Trung bình cộng của a, b, c, d bằng (a + b + c + d)/4
b Mã chương trình:
Program TB_Cong_4_So;
uses crt;
Var a, b, c, d: real;
Begin
Clrscr;
Write('Nhap so thu nhat:');readln(a);
Write('Nhap so thu hai:');readln(b);
Write('Nhap so thu ba:');readln(c);
Write('Nhap so thu tu:');readln(d);
Writeln('Trung binh cong: ',(a+b+c+d)/4):10:2;
Readln
end.
Bài tập 1.6: Viết chương trình cho phép tính trung bình cộng của bốn số với điều kiện
chỉ được sử dụng hai biến
a Hướng dẫn:
Dùng một biến S có giá trị ban đầu bằng 0
Dùng một biến để nhập số
Trang 9 Sau khi nhập một số cộng ngay vào biến S.
b Mã chương trình:
Program TB_Cong_4_So;
uses crt;
Var s,a: real;
Begin
Clrscr;
S:=0;
Write('Nhap so thu nhat:');readln(a); S:=S+a;
Write('Nhap so thu hai:');readln(a); S:= S+a;
Write('Nhap so thu ba:');readln(a); S:=S+a;
Write('Nhap so thu tu:');readln(a); S:=S+a;
Writeln('Trung binh cong: ',S/4:10:2);
readln
end.
b Nhận xét: Câu lệnh gán S:= S+a thực hiện việc cộng thêm a vào biến S Thực chất
là thực hiện các bước: lấy giá trị của S cộng với a rồi ghi đè vào lại biến S Ở đây ta cũng đã sử dụng biến a như là một biến tạm để chứa tạm thời giá trị được nhập từ bàn phím
Bài tập 1.7: Viết chương trình cho phép tính trung bình nhân của bốn số với điều kiện
chỉ được sử dụng hai biến
a Hướng dẫn:
Dùng một biến S có giá trị ban đầu bằng 1
Dùng một biến để nhập số
Sau khi nhập một số nhân ngay vào biến S
Trung bình nhân bốn số là căn bậc 4 tích của chúng (Dùng hai lần căn bậc hai)
b Mã chương trình:
Program TB_nhan;
uses crt;
Var a, S: real;
Begin
clrscr;
S:=1;
Write('Nhap so thu nhat: '); readln(a); S:=S*a;
Write('Nhap so thu hai: '); readln(a); S:=S*a;
Write('Nhap so thu ba: '); readln(a); S:=S*a;
Write('Nhap so thu tu: '); readln(a); S:=S*a;
Write('Trung binh nhan cua bon so la:',sqrt(sqrt(s)));
readln
End.
b Nhận xét: Ta đã dùng hai lần khai phương để lấy căn bậc 4 của một số Để cộng dồn giá trị vào một biến thì biến đó có giá trị ban đầu là 0 Để nhân dồn giá trị ban đầu vào biến thì biến đó cần có giá trị ban đầu là 1
Bài tập 1.8: Viết chương trình nhập hai số, đổi giá trị hai số rồi in ra hai số.
a Hướng dẫn:
Trang 10 Dùng các biến a, b để lưu hai số được nhập từ bàn phím;
Gán cho biến tam giá trị của a
Gán giá trị của b cho a (Sau lệnh này a có giá trị của b)
Gán giá trị của tạm cho cho b (Sau lệnh này b có giá trị của tam = a)
b Mã chương trình:
Program Doi_Gia_Tri;
uses crt;
var a, b, tam:real;
Begin
clrscr;
write('nhap a: '); readln(a);
write('nhap b: '); readln(b);
writeln('Truoc khi doi a =',a,' va b= ',b);
readln;
tam:=a;
a:=b;
b:=tam;
writeln('Sau khi doi a =',a,' va b= ',b);
readln
end