Câu 1(2 điểm) Viết cấu trúc khai báo mảng một chiều theo cách trực tiếp? Giải thích các thành phần khi khai báo mảng. Câu 2(3 điểm): Chuyển các câu đây sang ngôn ngữ lập trình pascal? a) Khai báo 3 biến có kiểu dữ liệu khác nhau b) Khai báo 3 biến có kiểu dữ liệu giống nhau c) Duyệt các số từ 1 đến 10 và in ra các số đó d) Khai báo 3 mảng có kiểu dữ liệu giống nhau e) Nếu x chia hết cho 2 thì thông báo x là số chẵn f) Khai báo một hằng nhận giá trị là TRUE Câu 3(3 điểm) Tìm ra chỗ sai và giải thích trong chương trình tính tổng sau : Program tinh tong; Uses crt; Var a,b,s :real; Begin Write(‘moi nhap a,b’); read(a,b); S = 0; If a mod 2= 0 and b mod 2 = 0 then s:=s+a+b; Else s:=s-a-b; Write(‘s=’,s:1:2); Readln; End. Câu 4(2 điểm) Lập trình nhập vào hai số n và b. Đưa ra kết quả phần dư và phần nguyên của n khi chia cho b( n> =b và b khác 0). Người ra đề : Nguyễn Văn Hải – Năm học : 2010-2011 SỞ GIÁO DỤC VÀ ĐÀO TẠO THANH HÓA TRƯỜNG THPT BÁ THƯỚC 3 ĐỀ KIỂM TRA HỌC KỲ II Môn : Tin học Thời gian : 45 phút (Dành cho các lớp 11a1,11a2,11a3 ) THANG ĐIỂM VÀ ĐÁP ÁN CÂU NỘI DUNG ĐIỂM 1 Var <ten_mang>: array[kiểu chỉ số] of <kiểu phần tử> ; 2 Trong đó : - var ,array, of là từ khóa - Ten_mang : đặt theo tên của pascal - Kiểu chỉ số là một đoạn liên tục số nguyên có dạng n1 n2(n1<=n2) -Kiểu phần tử là các kiểu dữ liệu cơ bản 2 a Var a:integer; b:byte; c :char; 0.5 b Var a,b,c :integer; 0.5 c For i:=1 to 10 do write(i:3); 0.5 d Type mang=array[1 10] of integer; Var a,b,c :mang; 0.5 e If x mod 2=0 then write(‘x la so chan’); 0.5 f Const a= ‘TRUE’ 0.5 3 tinh tong; -> tên không chứa dấu cách 0.5 Biến a và b phải là kiểu nguyên 0.5 s=0 -> ở đây là câu lệnh gán 0.5 If (a mod 2= 0) and (b mod 2 = 0) then s:=s+a+b 0.5 Trước else không chứa dấu phẩy 0.5 Write(‘s=’,s:1:2); -> sửa lại Write(‘s=’,s:3); 0.5 4 Program phan_du; 0.5 Người ra đề : Nguyễn Văn Hải – Năm học : 2010-2011 Uses crt; Var n,b :integer; du, nguyen:integer; Begin Clrscr; Write(‘moi nhap n,b’); read(n,b); du:= n mod b; 1 nguyen := n div b; Writeln(‘nguyen=’,nguyen:3); 0.5 Writeln(‘du=’,du:3); Readln; End. Người ra đề : Nguyễn Văn Hải – Năm học : 2010-2011 . Nguyễn Văn Hải – Năm học : 20 10 -20 11 SỞ GIÁO DỤC VÀ ĐÀO TẠO THANH HÓA TRƯỜNG THPT BÁ THƯỚC 3 ĐỀ KIỂM TRA HỌC KỲ II Môn : Tin học Thời gian : 45 phút (Dành cho các lớp 11a1,11a2,11a3 ) THANG ĐIỂM. 2= 0) and (b mod 2 = 0) then s:=s+a+b 0.5 Trước else không chứa dấu phẩy 0.5 Write(‘s=’,s:1 :2) ; -> sửa lại Write(‘s=’,s:3); 0.5 4 Program phan_du; 0.5 Người ra đề : Nguyễn Văn Hải – Năm học. Writeln(‘nguyen=’,nguyen:3); 0.5 Writeln(‘du=’,du:3); Readln; End. Người ra đề : Nguyễn Văn Hải – Năm học : 20 10 -20 11