PHÒNG GD-ĐT HUYỆN CẨM MỸTrường THCS:……….. Bài 2: Viết chương trình nhập vào một mảng gồm n phần tử n.
Trang 1PHÒNG GD-ĐT HUYỆN CẨM MỸ
Trường THCS:……….
Họ Tên:……….
KỲ THI TIN HỌC TRẺ KHÔNG CHUYÊN
HÈ NĂM HỌC 2010 - 2011
ĐỀ THI THỰC HÀNH THỜI GIAN : 90’
Bài 1: Viết chương tìm ước số chung lớn nhất của hai số nguyên a và b khác 0, với a, b được nhập từ bàn phím
Bài 2: Viết chương trình nhập vào một mảng gồm n phần tử (n<=100) Kiểm tra và in ra màn hình các số là số nguyên tố sắp xếp theo thứ tự tăng dần
Bài 3: Trăm Trâu, trăm cỏ
Trâu đứng ăn năm
Trâu nằm ăm ba
Lụ khụ Trâu già
Ba con một bó
Viết chương tìm số Trâu đứng, Trâu nằm, Trâu già?
………
ĐIỂM GIÁM KHẢO 1 GIÁM KHẢO 1 MẬT MÃ
Trang 2KỲ THI TIN HỌC TRẺ KHÔNG CHUYÊN
HÈ NĂM HỌC 2010 - 2011
ĐỀ THI THỰC HÀNH
ĐÁP ÁN VÀ BIỂU ĐIỂM Bài 1: 3 điểm
− Khai báo đúng: 0,5 điểm
− Nhập được dữ liệu: 0,5 điểm
− Thuật toán tìm UCLN đúng: 1,5 điểm
− Test đúng các trường hợp: 0,5 điểm
Bài 2: 4 điểm
− Khai báo đúng: 0,5 điểm
− Nhập được dữ liệu: 0,5 điểm
− Thuật toán tìm SNT đúng: 1,5 điểm
− Thuật toán tìm SX đúng: 1 điểm
− Xuất đúng dữ liệu dãy SNT: 0,5 điểm
Bài 3: 3 điểm
− Khai báo đúng: 0,5 điểm
− Thuật toán đúng: 2 điểm
− Xuất đúng các trường hợp: 0,5 điểm
Program Bai1;
Uses crt;
Var a,b,m,n:integer;
Begin
clrscr;
repeat
write('nhap a,b (a<>0, b<>0): ');
readln(a,b);
until (a<>0) and (b<>0);
m:=abs(a); n:=abs(b);
while m<>n do
if m>n then m:=m-n else n:=n-m;
writeln('ucln(',a,',',b,')=',m);
readln;
End
Trang 3Program Bai2;
Uses crt;
Var b,a:array[1 100]of integer;
n,i,j,k,tam:integer;
Begin
clrscr;
write('nhap so phan tu cua day so nguyen : ');
readln(n);
writeln('nhap gia tri cua cac phan tu :');
for i:=1 to n do
begin
write('a[',i,']= ') ;
readln(a[i]);
end;
k:=0;
for i:=1 to n do
begin
j:=2;
while a[i] mod j <> 0 do j:=j+1;
if a[i] = j then
begin
k:=k+1; b[k]:=a[i];
end;
end;
for i:=1 to k-1 do
for j:=i+1 to k do
if b[i]>b[j] then
begin
tam:=b[i]; b[i]:=b[j]; b[j]:=tam;
end;
writeln('cac so nguyen to da duoc sap xep: ');
for i:=1 to k do write(b[i]:5);
readln;
End
Program Bai3;
Uses crt;
Var t_dung, t_nam, t_gia: integer;
Begin
for t_dung:=1 to 100 do
for t_nam:=1 to 100 do
for t_gia:= 1 to 100 do
if (t_dung+t_nam+t_gia=100) and (t_dung*5 + t_nam*3 + (t_gia/3) = 100) then
writeln('trau dung: ',t_dung:5,'trau nam: ',t_nam:5,'trau gia: ',t_gia:5);
Trang 4readln End