Đề thi + Đáp án thi HSG lớp 9 2009 - 2010
Chia sẻ bởi Ngô Xuân Lợi |
Ngày 16/10/2018 |
51
Chia sẻ tài liệu: Đề thi + Đáp án thi HSG lớp 9 2009 - 2010 thuộc Tin học 9
Nội dung tài liệu:
TRƯỜNG THCS ĐẠI TỰ
KỲ THI HỌC SINH GIỎI LỚP 9 NĂM HỌC 2009 – 2010
ĐỀ THI MÔN: TIN HỌC
(Thời gian làm bài: 150 phút, không kể thời gian giao đề)
Tổng quan đề thi gôm hai bài như sau:
Tên bài
SNT.PAS
DAYSO.PAS
File input
SNT.INP
DAYSO.INP
File output
SNT.OUT
DAYSO.OUT
Câu 1: Với mỗi số tự nhiên n (1<=n<=1000) Tìm các số tự nhiên n thoả mãn:
+ M là số nguyene tố.
+ Tổng các chữ số của m cúng là số nguyene tố.
Dữ liệu vào: Cho trong File văn bản mang tên SNT.INP, gồm 1 dòng chứa số n
Dữ liêu ra: Vào File văn bản mang tên SNT.OUT, gồm 2 dòng:
+ Dòng 1 ghi thông báo: ‘Các số nguyên tố nhỏ hơn bằng n thoả mãn yêu cầu là:’
+ Dòng 2 hiển thị các só tìm được, mỗi số cách nhau 3 ký tự trắng.
Ví dụ:
SNT.INP
SNT.OUT
N=10
Các số nguyên tố nhỏ hơn bằng 10 thoả mãn yêu cầu là:
2 3 5 7
N=100
Các số nguyên tố nhỏ hơn bằng n thoả mãn yêu cầu là:
2 3 5 7 11 23 29 41 43 47 61 67 83 89
Câu 2: Dãy số a1, a2, a3, …,an, đ ư ợc đ ịnh ngh ĩa nh ư sau:
+ a1=a
+ an+1 là số đảo ngược của an+k
Ví dụ: Với a=1, k=4 thì ta có dãy số:
1, 5, 9, 31, 53, 75, 97, 101, …
Yêu cầu
1, Với mỗi bộ 3 số tự nhiên a, k, n hãy in ra dãy số a1, a2, a3, …., an (n phần tử)
2, In ra các chỉ số I mà tại đó ai = 1.
Dữ liệu vào: Cho trong File văn bản mang tên DAYSO.INP, gồm 3 dòng:
+ Dòng 1: Chứa số a.
+ Dòng 2: Chứa số k.
+ Dòng 3: Chứa số n.
Dữ liệu ra: Vào File văn bản mang tên DAYSO.OUT, gồm:
+ Các dòng đầu tiên là dãy số tìm được, mỗi dòng gồm 20 phần tử của dãy (nếu n>=20)
+ Dòng tiếp theo ghi thông báo: ‘Các vị trí mà ai=1 là:’
+ Các dòng tiếp theo là các vị trí tìm được.
Ví dụ:
Với a = 1, k=4, n=10
DAYSO.INP
DAYSO.OUT
1
4
10
1 5 9 31 53 75 97 101 501 505
Các vị trí mà ai = 1 là:
1
Với a = 4, k=6, n=50
DAYSO.INP
DAYSO.OUT
4
6
50
4 1 7 31 73 97 301 703 907 319 523 925 139 541 745 157 361 763 967 397
583 985 199 502 805 118 421 724 37 34 4 1 7 31 73 97 301 703 907 319
523 925 139 541 745 157 361 763 967 379
Các vị trí mà ai = 1 là:
2 32
Đáp án
program bai1;
var n,i:longint;
f,g:text;
function nt(x:longint):boolean;
var w:longint;
begin
nt:=false;
for w:=2 to x div 2 do
if x mod w =0 then exit;
nt:=x>1;
end;
function TCS(p:longint):longint;
var m,s:longint;
begin
s:=0;
repeat
s:=s+ p mod 10;
p:=p div 10;
until p=0;
tcs:=s;
end;
begin
assign(f,`snt.inp`);reset(f);
assign(g,`snt.out`);rewrite(g);
read(f,n);
writeln(g,`cac so nguyen to nho hon hoac bang `,n,` thoa man yeu cau la:`);
for i:=1 to n do
if (nt(i)) and (nt(tcs(i))) then
write(g,i,` `);
close(f);
close(g);
end.
program bai2;
var a,d:array[1..7000] of longint;
j,i,k,n,
KỲ THI HỌC SINH GIỎI LỚP 9 NĂM HỌC 2009 – 2010
ĐỀ THI MÔN: TIN HỌC
(Thời gian làm bài: 150 phút, không kể thời gian giao đề)
Tổng quan đề thi gôm hai bài như sau:
Tên bài
SNT.PAS
DAYSO.PAS
File input
SNT.INP
DAYSO.INP
File output
SNT.OUT
DAYSO.OUT
Câu 1: Với mỗi số tự nhiên n (1<=n<=1000) Tìm các số tự nhiên n thoả mãn:
+ M là số nguyene tố.
+ Tổng các chữ số của m cúng là số nguyene tố.
Dữ liệu vào: Cho trong File văn bản mang tên SNT.INP, gồm 1 dòng chứa số n
Dữ liêu ra: Vào File văn bản mang tên SNT.OUT, gồm 2 dòng:
+ Dòng 1 ghi thông báo: ‘Các số nguyên tố nhỏ hơn bằng n thoả mãn yêu cầu là:’
+ Dòng 2 hiển thị các só tìm được, mỗi số cách nhau 3 ký tự trắng.
Ví dụ:
SNT.INP
SNT.OUT
N=10
Các số nguyên tố nhỏ hơn bằng 10 thoả mãn yêu cầu là:
2 3 5 7
N=100
Các số nguyên tố nhỏ hơn bằng n thoả mãn yêu cầu là:
2 3 5 7 11 23 29 41 43 47 61 67 83 89
Câu 2: Dãy số a1, a2, a3, …,an, đ ư ợc đ ịnh ngh ĩa nh ư sau:
+ a1=a
+ an+1 là số đảo ngược của an+k
Ví dụ: Với a=1, k=4 thì ta có dãy số:
1, 5, 9, 31, 53, 75, 97, 101, …
Yêu cầu
1, Với mỗi bộ 3 số tự nhiên a, k, n hãy in ra dãy số a1, a2, a3, …., an (n phần tử)
2, In ra các chỉ số I mà tại đó ai = 1.
Dữ liệu vào: Cho trong File văn bản mang tên DAYSO.INP, gồm 3 dòng:
+ Dòng 1: Chứa số a.
+ Dòng 2: Chứa số k.
+ Dòng 3: Chứa số n.
Dữ liệu ra: Vào File văn bản mang tên DAYSO.OUT, gồm:
+ Các dòng đầu tiên là dãy số tìm được, mỗi dòng gồm 20 phần tử của dãy (nếu n>=20)
+ Dòng tiếp theo ghi thông báo: ‘Các vị trí mà ai=1 là:’
+ Các dòng tiếp theo là các vị trí tìm được.
Ví dụ:
Với a = 1, k=4, n=10
DAYSO.INP
DAYSO.OUT
1
4
10
1 5 9 31 53 75 97 101 501 505
Các vị trí mà ai = 1 là:
1
Với a = 4, k=6, n=50
DAYSO.INP
DAYSO.OUT
4
6
50
4 1 7 31 73 97 301 703 907 319 523 925 139 541 745 157 361 763 967 397
583 985 199 502 805 118 421 724 37 34 4 1 7 31 73 97 301 703 907 319
523 925 139 541 745 157 361 763 967 379
Các vị trí mà ai = 1 là:
2 32
Đáp án
program bai1;
var n,i:longint;
f,g:text;
function nt(x:longint):boolean;
var w:longint;
begin
nt:=false;
for w:=2 to x div 2 do
if x mod w =0 then exit;
nt:=x>1;
end;
function TCS(p:longint):longint;
var m,s:longint;
begin
s:=0;
repeat
s:=s+ p mod 10;
p:=p div 10;
until p=0;
tcs:=s;
end;
begin
assign(f,`snt.inp`);reset(f);
assign(g,`snt.out`);rewrite(g);
read(f,n);
writeln(g,`cac so nguyen to nho hon hoac bang `,n,` thoa man yeu cau la:`);
for i:=1 to n do
if (nt(i)) and (nt(tcs(i))) then
write(g,i,` `);
close(f);
close(g);
end.
program bai2;
var a,d:array[1..7000] of longint;
j,i,k,n,
* Một số tài liệu cũ có thể bị lỗi font khi hiển thị do dùng bộ mã không phải Unikey ...
Người chia sẻ: Ngô Xuân Lợi
Dung lượng: 47,50KB|
Lượt tài: 0
Loại file: doc
Nguồn : Chưa rõ
(Tài liệu chưa được thẩm định)