Đề thi HSG Tin 9 huyện Krông Ana năm 2015-2016
Gửi bởi: Nguyễn Minh Lệ 21 tháng 8 2021 lúc 21:55:56 | Được cập nhật: 26 tháng 3 lúc 14:05:00 bởi: pascaltinhoc8 | IP: 14.243.134.238 Kiểu file: DOC | Lượt xem: 114 | Lượt Download: 2 | File size: 0.242688 Mb
Nội dung tài liệu
Tải xuống
Link tài liệu:
Các tài liệu liên quan
- Đề thi học kì 2 Tin 9 trường THCS Nguyễn Chí Thanh năm 2021-2022
- Đề thi học kì 1 Tin 9 trường THPT Phan Châu Trinh năm 2021-2022
- Đề thi học kì 2 Tin 9 trường PTDTBT - THCS Liên xã La Êê- Chơ Chun năm 2021-2022
- Đề thi học kì 1 Tin 9 trường THCS Đông Hưng A năm 2021-2022
- Đề thi học kì 1 Tin 9 trường THCS Đức Lân năm 2021-2022
- Đề thi học kì 2 Tin 9 trường THCS Nhơn Bình năm 2019-2020
- Đề thi giữa kì 1 Tin 9 trường THCS Thị trấn Thới Lai năm 2020-2021
- Đề thi giữa kì 1 Tin 9 trường THCS Thị trấn Thới Lai năm 2020-2021
- Đề thi giữa kì 1 Tin 7 trường THCS Phú Xuân năm 2020-2021
- Đề thi học kì 2 Tin 9 trường THCS Bắc Lệnh năm 2020-2021
Có thể bạn quan tâm
Thông tin tài liệu
PHÒNG GD&ĐT KRÔNG ANA
KỲ THI HỌC SINH GIỎI CẤP HUYỆN
NĂM HỌC 2015 - 2016
ĐỀ CHÍNH THỨC
Đề thi môn: Tin học 9
Thời gian làm bài: 150 phút
Bài 1: (4,0 điểm) SỐ LƯỢNG
Viết chương trình nhập vào dãy N 1 N 100 số nguyên và các phần tử
A a1 , a2 ,......aN và số nguyên K nhập từ bàn phím. Hãy cho biết trong dãy vừa
nhập
có bao nhiêu phần tử chia hết cho K và vị trí các phần tử đó trong dãy. Kết quả in ra
màn hình theo cấu trúc sau:
- Dòng 1: Ghi số lượng các phần tử chia hết cho K.
- Dòng 2: Ghi vị trí các phần tử chia hết cho K. Các số cách nhau 1 dấu cách.
- Dòng 3: Ghi giá trị các phần tử chia hết cho K. Các số cách nhau 1 dấu cách.
Nếu trong dãy không có giá trị nào chia hết cho K thì in ra thông báo: Trong dãy
không có phần tử nào chia hết cho K.
Ví dụ 1:
Dữ liệu nhập từ bàn phím
Kết quả in ra màn hình
N=5
So luong: 3
A={258109}
Vi tri: 1 3 4
K=2
Gia tri: 2 8 10
Ví dụ 2:
Dữ liệu nhập từ bàn phím
Kết quả in ra màn hình
N=4,A={1356},K=8
Khong co phan tu chia het cho K
Bài 2: (4,0 điểm) CHUẨN HÓA XÂU
Viết chương trình nhập vào 1 xâu bất kỳ từ bàn phím. Hãy chuẩn hóa xâu
theo quy tắc sau:
- Xóa các dấu cách ở đầu xâu nếu có.
- Xóa các dấu cách ở cuối xâu nếu có.
- Thay dãy nhiều dấu cách liên tiếp giữa các từ trong xâu bằng 1 dấu
cách. Yêu cầu: In kết quả ra màn hình.
- Xâu vừa chuẩn hóa theo quy tắc trên.
- Số lượng chữ cái in thường, chữ cái in hoa và chữ số có trong xâu.
Ví dụ:
Dữ liệu nhập từ bàn phím
Kết quả in ra màn hình
Xau chuan hoa: HoC sINh89 gIoI 2016
HoC
sINh89
gIoI
2016 So luong chu cai in thong : 5
So luong chu cai in hoa
:6
So luong chu so trong xau : 6
Câu 3: (6 điểm) DÃY CON CHUNG
Cho dãy số nguyên A gồm N phần tử a1, a2, ..., aN và dãy số nguyên B gồm M
phần tử b1, b2, ..., bM. Các phần tử trong một dãy số có giá trị khác nhau từng đôi một.
Dãy C được gọi là dãy con của dãy A nếu dãy C nhận được từ dãy A bằng
cách xóa đi một số phần tử và giữ nguyên thứ tự của các phần tử còn lại.
-1-
Nếu dãy C là dãy con của dãy A và cũng là dãy con của dãy B thì dãy C
được gọi là dãy con chung của hai dãy A và B.
Yêu cầu: Hãy tìm dãy C là dãy con chung của hai dãy A và B sao cho số lượng
phần tử của dãy C là lớn nhất.
Dữ liệu vào: Nhập từ bàn phím.
Dữ liệu ra: Ghi ra file văn bản BAI3.OUT theo cấu trúc như sau:
- Dòng 1: Ghi số nguyên dương K là số lượng phần tử của dãy C.
- Dòng 2: Ghi giá trị phần tử trong dãy C, các số được ghi cách nhau một dấu cách.
- Dòng 3: Ghi K số nguyên dương lần lượt là chỉ số của các phần tử trong dãy A ứng
với các giá trị của phần tử đó trong dãy C, các số được ghi cách nhau một dấu cách.
- Dòng 4: Ghi K số nguyên dương lần lượt là chỉ số trong dãy B tương ứng với
các giá trị của phần tử đó trong dãy C, các số được ghi cách nhau một dấu cách.
Ví dụ:
BÀN PHÍM
BAI3.OUT
7
5
8
31126154 3 12 6 15 4
6
2 4 5 67
31276154
12
456
Bài 4: (6,0 điểm) TÌM SỐ
Cho số nguyên dương X, khi đảo ngược trật tự các chữ số của X ta sẽ thu được
một số nguyên dương Y, Y được gọi là số đảo ngược của X.
Ví dụ: X = 97 thì Y = 79 là số đảo ngược của X.
Số nguyên dương Y được gọi là số nguyên tố nếu nó chỉ có hai ước số là 1 và
chính nó, số 1 không phải là số nguyên tố.
Cho hai số nguyên dương P và Q (1 ≤ P ≤ Q ≤ 2107; Q - P ≤ 105).
Yêu cầu: Hãy tìm tất cả các số nguyên dương X nằm thỏa mãn P ≤ X ≤ Q và số
đảo ngược của số X là số nguyên tố.
Dữ liệu vào: Cho trong file văn bản BAI4.INP có cấu trúc như sau:
- Dòng 1: Ghi số nguyên dương P, Q. Hai số được ghi cách nhau ít nhất một dấu
cách. Dữ liệu ra: Ghi ra file văn bản BAI4.OUT trên nhiều dòng, mỗi dòng ghi một
số nguyên X tìm dược.
Ví dụ:
BAI4.INP
BAI4.OUT
10 19
11
13
14
16
17
--------------------- Hết --------------------(Cán bộ coi thi không giải thích gì thêm)
Họ và tên thí sinh ..................................................... SBD...........................
Chữ ký giám thị 1
Chữ ký giám thị 2
-2-
PHÒNG GD&ĐT KRÔNG ANA
KỲ THI HỌC SINH GIỎI CẤP HUYỆN NĂM HỌC 2015-2016
ĐÁP ÁN VÀ HƯỚNG DẪN CHẤM
Môn: Tin học 9
Yêu cầu chung:
- Chương trình chạy cho kết quả đúng (có thể làm theo cách khác đáp án):
khai báo đầy đủ, trình bày có cấu trúc rõ ràng cho điểm tối đa. Không khai báo
mỗi biến trừ 0.25 điểm.
- Chương trình cho kết quả sai: Chỉ chấm phần các ý chính của thuật toán,
mỗi ý đúng cho điểm không vượt quá 50% số điểm của câu.
BÀI 1(4,0 điểm): SỐ LƯỢNG
Chương trình tham khảo
PROGRAM BAI_1;
USES CRT;
VAR A,B,C:ARRAY[1..100]OF INTEGER;
N,I,J,K,L,D:INTEGER;
BEGIN CLRSCR;
WRITE('NHAP N= ');READLN(N);WRITELN;
WRITE('NHAP GIA TRI DAY A: '); WRITELN;
FOR I:=1 TO N DO
BEGIN
WRITE('A[',I,']= '); READLN(A[I]);
END; WRITELN;
WRITE('DAY VUA NHAP: ');
FOR I:=1 TO N DO WRITE(A[I]:4); WRITELN;
WRITE('NHAP K= ');READLN(K); WRITELN;
J:=1;L:=1;D:=0;
FOR I:=1 TO N DO
IF A[I] MOD K = 0 THEN
BEGIN
D:=D+1;
B[J]:=I; C[L]:=A[I];
J:=J+1; L:=L+1;
END;
IF D0 THEN
BEGIN
WRITE('SO LUONG PHAN TU CHIA HET: ',D:2); WRITELN;
WRITE('VI TRI CAC PHAN TU: ');
FOR I:=1 TO D DO WRITE(B[I]:3);WRITELN;
WRITE('GIA TRI CAC PHAN TU: ');
FOR I:=1 TO D DO WRITE(C[I]:3);WRITELN;
END
ELSE WRITE('KHONG CO PHAN TU NAO CHIA HET CHO ',K);
READLN
END.
Điểm
1.0
1.0
1.0
1.0
-3-
BỘ TEST CHƯƠNG TRÌNH:
TEST 1:
Dữ liệu nhập từ bàn phím
N=5
A={258109}
K=2
Kết quả in ra màn hình
So luong: 3
Vi tri: 1 3 4
Gia tri: 2 8 10
Dữ liệu nhập từ bàn phím
N=6
A={31281597}
K=3
Kết quả in ra màn hình
So luong: 4
Vi tri: 1 2 4 5
Gia tri: 3 12 15 9
Dữ liệu nhập từ bàn phím
N=7,A={121081356},
K=7
Kết quả in ra màn hình
Khong co phan tu chia het cho K
TEST 2:
TEST 3:
BÀI 2(4,0 điểm): CHUẨN HÓA XÂU
Chương trình tham khảo
PROGRAM BAI_1;
USES CRT;
VAR ST:STRING;
I,D,d1,d2:INTEGER;
BEGIN
WRITE('NHAP XAU: '); READLN(ST); WRITELN;
WHILE ST[1]=' ' DO DELETE(ST,1,1);
WHILE ST[LENGTH(ST)]=' ' DO DELETE(ST,LENGTH(ST),1);
WHILE POS(' ',ST)0 DO DELETE(ST,POS(' ',ST),1);
WRITE('XAU CHUAN HOA: ',ST);WRITELN;
Điểm
1.0
0.5
1.0
-4-
D:=0; D1:=0; D2:=0;
FOR I:=1 TO LENGTH(ST) DO
BEGIN
IF ST[I]IN['a'..'z'] then D:=D+1;
IF ST[I]IN['A'..'Z'] then D1:=D1+1;
IF ST[I]IN['0'..'9'] then D2:=D2+1;
end;
WRITE('SO LUONG KY TU IN THUONG: ',D) ;WRITELN;
WRITE('SO LUONG KY TU IN HOA : ',D1);WRITELN;
WRITE('SO LUONG KY TU CHU SO : ',D2);WRITELN;
1.0
0.5
READLN
END.
-5-
BỘ TEST CHƯƠNG TRÌNH:
TEST 1:
Dữ liệu nhập từ bàn phím
HoC
sINh89
gIoI
2016
Kết quả in ra màn hình
Xau chuan hoa: HoC sINh89 gIoI 2016
So luong chu cai in thong : 5
So luong chu cai in hoa : 6
So luong chu so trong xau : 6
TEST 2:
Dữ liệu nhập từ bàn phím
TiN
hOc
Lop
9
Kết quả in ra màn hình
Xau chuan hoa: TiN hOc Lop 9
So luong chu cai in thong : 5
So luong chu cai in hoa : 4
So luong chu so trong xau : 1
TEST 3:
Dữ liệu nhập từ bàn phím
SACH
GIAO
KHOA
Kết quả in ra màn hình
Xau chuan hoa: SACH GIAO KHOA
So luong chu cai in thong : 0
So luong chu cai in hoa : 12
So luong chu so trong xau : 0
BÀI 3(6,0 điểm): DÃY CON CHUNG
Chương trình tham khảo
VAR
A,B,C,D,G:ARRAY[1..100]OF INTEGER;
M,N,I,J,L,DEM,T,K:INTEGER;
F:TEXT;
BEGIN
WRITE('NHAP N:= ');READLN(N); WRITELN;
FOR I:=1 TO N DO
BEGIN
WRITE('A[',I,']= ');
READLN(A[I]);
END; WRITELN;
WRITE('NHAP M:= ');READLN(M); WRITELN;
FOR I:=1 TO M DO
BEGIN
WRITE('B[',I,']= ');
READLN(B[I]);
END; WRITELN;
ASSIGN(F,'BAI3.OUT');REWRITE(F);
DEM:=0;T:=1;K:=1;
FOR I:=1 TO N DO
BEGIN
FOR J:=1 TO M DO
Điểm
1.0
1.5
1.0
-6-
IF A[I]=B[J] THEN
BEGIN
DEM:=DEM+1;
C[T]:=I;
D[K]:=J;
T:=T+1;
K:=K+1;
END;
END;
WRITE(F,DEM);WRITELN(F);
FOR I:=1 TO N DO
BEGIN
FOR J:=1 TO M DO
IF A[I]=B[J] THEN WRITE(F,A[I]:3);
END;
WRITELN(F);
FOR I:=1 TO DEM DO
WRITE(F,C[I]:3); WRITELN(F);
FOR I:=1 TO DEM DO WRITE(F,D[I]:3);
CLOSE(F);
END.
BỘ TEST CHƯƠNG TRÌNH:
TEST 1:
BÀN PHÍM
5
3
1131126
3
4
2
3 1276
1
TEST 2:
BÀN PHÍM
6
2 457810
5
4 5789
1.0
1.5
BAI3.OUT
12 6
4 5
2 4
BAI3.OUT
4
4 5 7 8
2 3 45
1 2 34
TEST 3:
BÀN PHÍM
7
1347108
9
6
1 4 6 10 12 9
BAI3.OUT
4
1 4 10 9
1 3 57
1 2 46
-7-
BÀI 4(6,0 điểm): TÌM SỐ
Chương trình tham khảo
FUNCTION NG_TO(X:INTEGER):BOOLEAN;
VAR J: INTEGER;
KT: BOOLEAN;
BEGIN
KT:= TRUE;
IF X = 1 THEN KT:= FALSE
ELSE
FOR J:= 2 TO X DIV 2 DO
IF X MOD J = 0 THEN KT:= FALSE;
NG_TO:= KT;
END;
FUNCTION DAO_SO(Y: INTEGER): INTEGER;
VAR S:INTEGER;
BEGIN
S:=0;
WHILE Y0 DO
BEGIN
S:=S*10 + (Y MOD 10);
Y:= Y DIV 10;
END;
DAO_SO:=S;
END;
VAR X,Y,P,Q,I:INTEGER;
F,F1: TEXT;
BEGIN
ASSIGN(F,'BAI4.INP'); RESET(F);
ASSIGN(F1,'BAI4.OUT');REWRITE(F1);
WRITE(F1,'CAC SO CAN TIM');WRITELN(F1);
READ(F,P,Q);
FOR I:= P TO Q DO
IF NG_TO(DAO_SO(I))=TRUE THEN WRITELN(F1,I:3);
CLOSE(F);
CLOSE(F1);
END.
BỘ TEST CHƯƠNG TRÌNH:
Điểm
1.5
1.5
1.0
1.5
0.5
TEST 1:
BAI4.INP
5 20
BAI4.OUT
5
7
11
13
14
-8-
TEST 2:
BAI4.INP
10 25
BAI4.OUT
11
13
14
16
17
20
BAI4.INP
25 50
BAI4.OUT
30
31
32
34
35
37
38
50
TEST 3:
Ghi chú:
- Học sinh có thể viết chương trình khác nhưng chạy đúng kết quả test vẫn
cho điểm tối đa.
- Nếu học sinh không đọc được dữ liệu từ file hoặc không ghi dữ liệu vào
file được thì giám khảo trừ 75% số điểm của phần đó.
-9-