Đáp án HSG Tin học lớp 9 Krông Ana, Đắk Lắk 2015-2016 - Học Toàn Tập

7 14 0
Đáp án HSG Tin học lớp 9 Krông Ana, Đắk Lắk 2015-2016 - Học Toàn Tập

Đang tải... (xem toàn văn)

Thông tin tài liệu

- 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... - Nếu học sinh không đọc được dữ liệu từ file hoặ[r]

(1)

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 Yêu cầu chung:

- Chương trình chạy cho kết (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 biến trừ 0.25 điểm

- Chương trình cho kết sai: Chỉ chấm phần ý thuật tốn, ý cho điểm khơng vượt 50% số điểm câu

BÀI 1(4,0 điểm): SỐ LƯỢNG

Chương trình tham khảo Điểm

PROGRAM BAI_1; USES CRT;

VAR A,B,C:ARRAY[1 100]OF INTEGER; N,I,J,K,L,D:INTEGER;

1.0 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 = THEN BEGIN

D:=D+1;

B[J]:=I; C[L]:=A[I]; J:=J+1; L:=L+1; END;

IF D<>0 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

1.0

1.0

(2)

BỘ TEST CHƯƠNG TRÌNH: TEST 1:

Dữ liệu nhập từ bàn phím Kết in hình

N = So luong:

A = {2 10 9} Vi tri:

K = Gia tri: 10

TEST 2:

Dữ liệu nhập từ bàn phím Kết in hình

N = So luong:

A = {3 12 15 7} Vi tri:

K = Gia tri: 12 15

TEST 3:

Dữ liệu nhập từ bàn phím Kết in hình N = 7, A = {12 10 6},

K =

Khong co phan tu chia het cho K

BÀI 2(4,0 điểm): CHUẨN HĨA XÂU

Chương trình tham khảo Điểm

PROGRAM BAI_1; USES CRT;

VAR ST:STRING; I,D,d1,d2:INTEGER;

1.0 BEGIN

WRITE('NHAP XAU: '); READLN(ST); WRITELN; 0.5 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;

(3)

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;

READLN END

1.0

(4)

BỘ TEST CHƯƠNG TRÌNH: TEST 1:

Dữ liệu nhập từ bàn phím Kết in hình HoC sINh89 gIoI 2016

Xau chuan hoa: HoC sINh89 gIoI 2016 So luong chu cai in thong :

So luong chu cai in hoa : So luong chu so xau : TEST 2:

Dữ liệu nhập từ bàn phím Kết in hình TiN hOc Lop

Xau chuan hoa: TiN hOc Lop So luong chu cai in thong : So luong chu cai in hoa : So luong chu so xau : TEST 3:

Dữ liệu nhập từ bàn phím Kết in hình SACH GIAO KHOA

Xau chuan hoa: SACH GIAO KHOA So luong chu cai in thong :

So luong chu cai in hoa : 12 So luong chu so xau :

BÀI 3(6,0 điểm):DÃY CON CHUNG

Chương trình tham khảo Điểm

VAR

A,B,C,D,G:ARRAY[1 100]OF INTEGER; M,N,I,J,L,DEM,T,K:INTEGER;

F:TEXT;

1.0 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;

1.5

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

(5)

IF A[I]=B[J] THEN BEGIN

DEM:=DEM+1; C[T]:=I;

D[K]:=J; T:=T+1; K:=K+1; END;

END;

1.0

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

1.5

BỘ TEST CHƯƠNG TRÌNH: TEST 1:

BÀN PHÍM BAI3.OUT

5

11 12

3 12

3

3 12 TEST 2:

BÀN PHÍM BAI3.OUT

6

2 10

4

4

4 TEST 3:

BÀN PHÍM BAI3.OUT

7

1 10

1 10 12

4

(6)

BÀI 4(6,0 điểm): TÌM SỐ

Chương trình tham khảo Điểm

FUNCTION NG_TO(X:INTEGER):BOOLEAN; VAR J: INTEGER;

KT: BOOLEAN; BEGIN

KT:= TRUE;

IF X = THEN KT:= FALSE ELSE

FOR J:= TO X DIV DO

IF X MOD J = THEN KT:= FALSE; NG_TO:= KT;

END;

1.5

FUNCTION DAO_SO(Y: INTEGER): INTEGER; VAR S:INTEGER;

BEGIN S:=0;

WHILE Y<>0 DO BEGIN

S:=S*10 + (Y MOD 10); Y:= Y DIV 10;

END;

DAO_SO:=S; END;

1.5

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.

1.0

1.5 0.5 BỘ TEST CHƯƠNG TRÌNH:

TEST 1:

BAI4.INP BAI4.OUT

5 20

(7)

TEST 2:

BAI4.INP BAI4.OUT

10 25 11

13 14 16 17 20 TEST 3:

BAI4.INP BAI4.OUT

25 50 30

31 32 34 35 37 38 50

Ghi chú:

- Học sinh có thể viết chương trình khác chạy kết test cho điểm tối đa

Ngày đăng: 24/02/2021, 04:52

Từ khóa liên quan

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan