UBND HUYỆN TAM DƯƠNG
PHÒNG GD-ĐT
----------
ĐỀ CHÍNH THỨC
ĐỀ THI HỌC SINH GIỎI VÒNG 1
Môn: Tin học 9
Thời gian làm bài: 150 phút
(Không kể thời gian giao đề)
(Lưu ý đề thi có 02 trang)
Ghi chú: Học sinh có thể nhập, xuất dữ liệu từ file văn bản hoặc từ bàn phím
Bài 1: ( 3 điểm ) Tên file bài làm là: bailam1.pas
Với mỗi số tự nhiên N ( 1 ≤ N ≤ 1000). Tìm các số tự nhiên M ≤ N thoả mãn:
+/ M là một số nguyên tố.
+/ Tổng các chữ số của M cũng là một số nguyên tố.
Yêu cầu: Nhập số tự nhiên N (1 ≤ N ≤ 1000). Thông báo số lượng các số tự nhiên M thỏa mãn
các yêu cầu trên, đó là các số nào?
Dữ liệu vào từ file: bailam1.inp
Dòng 1: Số tự nhiên N
Dữ liệu ra file: bailam1.out
Dòng 1: Ghi các số M thỏa mãn yêu cầu
Dòng 2: Số lượng các số tự nhiên M thỏa mãn
Ví dụ:
Dữ liệu vào từ file: bailam1.inp
10
Dữ liệu ra file: bailam1.out
2 3 5 7
4
Bài 2: ( 3 điểm) Tên file bài làm là: bailam2.pas
Dãy số a
1
, a
Dòng 1: Dãy số a
1
, a
2
, a
3
, ……, a
n
.
Dòng 2: chỉ số i mà tại đó a
i
= 1
Ví dụ:
Dữ liệu vào từ file: bailam2.inp
1 4 10
Dữ liệu ra file: bailam2.out
15 9 31 53 75 97 101 501 505
1
Bài 3: ( 2 điểm) Tên file bài làm là: bailam3.pas
Một công ty có nhu cầu cần mua 1 máy chuyên dụng, có N xí nghiệp nhận gia công loại
máy này ( 1≤ N ≤ 20). Với mỗi xí nghiệp thứ i ( 1≤ i ≤ N), thời gian gia công chiếc máy là T[i]
và bán máy với giá C[i]. Yêu cầu:
a/ Liệu công ty có thể mua máy của xí nghiệp nào mà thời gian gia công nhanh nhất và
bán với giá rẻ nhất không ? Nếu có đó là xí nghiệp nào ?
b/ Trong trường hợp không có xí nghiệp nào thỏa mãn cả 2 yêu cầu trên thì công ty ưu
tiên mua của xí nghiệp có thời gian gia công nhanh nhất nhưng với điều kiện giá mua không cao
hơn quá 10% của giá rẻ nhất. Liệu công ty có thực hiện được ý muốn không ? Nếu được thì
thông báo đó là xí nghiệp nào ?
Dữ liệu vào từ file: bailam3.inp
Dòng 1: Số tự nhiên N
Dữ liệu ra file: bailam4.out
3
-----------------------------o0o-----------------------------------
Cán bộ coi thi không giải thích gì thêm.
UBND HUYỆN TAM DƯƠNG
PHÒNG GD-ĐT
----------
HƯỚNG DẪN CHẤM THI HSG VÒNG 1
Môn: Tin học 9
Thời gian làm bài: 150 phút
Ghi chú: Học sinh có thể nhập, xuất dữ liệu từ file văn bản hoặc từ bàn phím
Bài 1: ( 3 điểm ) bailam1.pas: Mỗi Test đúng: 0.5 điểm
bailam1.inp 15 1 0 1000 1001 7
bailam1.out 2 3 5 7 11
5 0 0
2 3 5…
89 0
2 3 5 7
4
Bài 2: ( 3 điểm) bailam2.pas
Mỗi Test đúng: 0.5 điểm
Bailam2.inp 0 0 0 1 1 1 2 5 7 4 5 50 10 6 24 2 100 50
Bailam2.out 0
0
1
1
2 7 21 62 76 18 32
0
4 1 7 31 73….
2 32
Begin
d:=0;
For i:=2 to n div 2 do
If N mod i = 0 then Inc(d);
If (d=0)and(n<>1) then nto:=n;
End;
Function Sum(m:Longint):Longint;
Var s:Longint;
Begin
s:=0;
Repeat
s:=s+ m mod 10;
m:= m div 10;
Until m=0;
Sum:=s;
End;
Procedure XULI;
Var n,d:Longint;
Begin
Write(' N= '); Readln(N);
if (n>=1) and (n<=1000) then
begin
d:=0;
For i:= 2 to N do
If (nto(i)=i)and(nto(Sum(i))=Sum(i)) then
Begin
Inc(d);
Write(i:5);
End;
Writeln;
Readln;End.
Program Bai3;
Type Mang=array[1..100] of real;
Var n,i,j,k:integer;
t,c:Mang;
min1,min2:real;
Begin
write('Nhap so xi nghiep n= '); Readln(n);
writeln('Nhap thoi gian gia cong va gia thanh:');
for i:=1 to n do
begin
write('t[', i,']='); readln(t[i]);
write('c[', i,']='); readln(c[i]);
End;
min1:=t[1];
For i:=2 to n do
If min1>t[i] then min1:=t[i];
min2:=c[1];
For i:=2 to n do min2:=c[i];
k:=0;
For i:=1 to n do
begin
if (t[i]=min1) and (c[i]=min2) then
begin
inc(k);
writeln(' Lua chon XN thu:',i)
end
else
if (t[i]=min1) and (c[i]<=min2*1.1) then
begin
For i:=1 to N do
If a[i]=1 then
Begin
write(i:5);
Inc(d);
End;
If d=0 then write('0');
Readln;
End.