Së gi¸o dôc vµ ®µo t¹o §Ò thi tuyÓn sinh líp 10 thpt chuyªn n¨m häc 2008-2009

5 2 0
Së gi¸o dôc vµ ®µo t¹o     §Ò thi tuyÓn sinh líp 10 thpt chuyªn n¨m häc 2008-2009

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

Thông tin tài liệu

Së gi¸o dôc vµ ®µo t¹o §Ò thi tuyÓn sinh líp 10 thpt chuyªn n¨m häc 2008 2009 Së gi¸o dôc vµ ®µo t¹o §¸p ¸n ®Ò thi t/s líp 10 thpt chuyªn n¨m häc 2008 2009 TØnh ninh b×nh M«n Tin häc Thêi gian lµm bµi[.]

Sở giáo dục đào tạo Tỉnh ninh bình đề thi thức Đáp án đề thi t/s lớp 10 thpt chuyên năm học 2008-2009 Môn: Tin học Thời gian làm bài: 150 phút (không kể thời gian giao đề) (Đáp án gồm 04 trang) Phần 1: Hớng dẫn chấm Chấm lần lợt từ đến 3, cho điểm trờng hợp sau: ã Nếu chơng trình không chạy, không đa đợc output: Chấm mà nguồn: - Phần nhập đúng: 0.5 điểm - Chơng trình đủ dài (hơn 10 dòng), trình bày đẹp: thể cấu trúc lồng khối lệnh, xuống dòng hợp lý: 0.5 điểm ã Nếu chơng trình chạy, thực đợc input output (không thiết phải đúng): điểm Chấm test: - Chấm lần lợt test, test cần thử lần - Phần mà thí sinh luôn in kết kết không đơn định phần không cho điểm Chú ý: - Thí sinh in thông báo khác với đề nhng dấu hiệu đặc biệt (đánh dấu bài) cho điểm - Kết thí sinh khác với đáp án nhng cho ®iĨm Bµi 1: (6 ®iĨm) file m· ngn: bai1.pas Test: Test 01 02 03 04 05 06 07 08 09 10 Input (N) Output Khong la so nguyen Khong xoa duoc Khong la so nguyen Khong xoa duoc 13 La so nguyen to 21 Khong la so nguyen Khong xoa duoc 94 Khong la so nguyen Khong xoa duoc 123 Khong la so nguyen Xoa duoc 13 231 Khong la so nguyen Xoa duoc 23 312 Khong la so nguyen Xoa duoc 31 1997 La so nguyen to 1341 Khong la so nguyen Xoa duoc 131 §iĨm to to to to to to to to 0.25 0.25 0.25 0.25 0.5 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.5 0.25 0.25 Bài 2: (6 điểm) file m· nguån: bai2.pas Test: Test 01 Input (N) Output Tim duoc: §iĨm 0.5 Trang 02 03 04 05 06 10 100 1000 10000 Tim duoc: Tim duoc: Tim duoc: 33 99 Tim duoc: 33 99 313 585 717 Tim duoc: 33 99 313 585 717 7447 9009 0.5 1 1 Trang Bài 3: (8 điểm) file mà nguồn: bai3.pas Test: Test 01 02 03 04 05 06 07 08 09 10 Input (N, d·y A, d·y B) 5 12 34 12 21 123 456 123 454 123 425 12345 13455 12345 52341 12345 34512 121212 122212 Output Khong phan biet Doan chung dai nhat: §iĨm 0.25 0.25 Phan biet Hai day khong co doan chung 0.25 0.25 Khong phan biet Doan chung dai nhat: 0.25 0.25 Phan biet Hai day khong co doan chung 0.25 0.25 Khong phan biet Hai day khong co doan chung 0.25 0.25 Khong phan biet Doan chung dai nhat: 0.25 0.25 Khong phan biet Doan chung dai nhat: 0.5 0.5 Khong phan biet Doan chung dai nhat: 0.5 0.5 Khong phan biet Doan chung dai nhat: 0.5 0.5 Khong phan biet Doan chung dai nhat: 2 0.5 0.5 PhÇn 2: Chơng trình mẫu Bài 1: (6 điểm) (************************************************ De thi tuyen sinh tin hoc 10 21/6/2008 Mon Tin hoc Bai ************************************************) var N, q, tN, i: LongInt; Check: Boolean; BEGIN Write('N = '); ReadLn(N); tN := N; i := 0; repeat if i = then begin tN := N; i := 1; end else begin tN := (N div (i*10)) * i + (N mod i); i := i*10; end; Trang Check := tN > 1; for q:=2 to Trunc(Sqrt(tN)) if tN mod q = then begin Check := FALSE; break; end; if Check then break; until N div i = 0; if Check then begin if i = then WriteLn('La so nguyen to') else begin WriteLn('Khong la so nguyen to'); WriteLn('Xoa duoc ', tN); end end else begin WriteLn('Khong la so nguyen to'); WriteLn('Khong xoa duoc'); end; END Bài 2: (6 điểm) (************************************************ De thi tuyen sinh tin hoc 10 21/6/2008 Mon Tin hoc Bai ************************************************) var A: array[1 100] of Byte; i, j: Word; N, xN, maxN, tmp: LongInt; Check: Boolean; BEGIN Write('N = '); ReadLn(maxN); Write('Tim duoc: '); for N:=1 to maxN begin tmp := N; xN := 0; repeat xN := xN*10 + tmp mod 10; tmp := tmp div 10; until tmp = 0; Check := xN = N; if Check then begin tmp := N; i := 0; repeat Inc(i); A[i] := tmp mod 2; tmp := tmp div 2; until tmp = 0; for j:=1 to i div if A[j]A[i+1-j] then begin Check := FALSE; break; end; if Check then Write(N, ' '); Trang end; end; END Bài 3: (8 điểm) (************************************************ De thi tuyen sinh tin hoc 10 21/6/2008 Mon Tin hoc Bai ************************************************) const MAX = 10000; var N: Integer; A, B: array[1 MAX] of Byte; i, j, l, iMax, jMax, lMax: Integer; M: array[Byte] of Boolean; Check: Boolean; BEGIN Write('N = '); ReadLn(N); Check := TRUE; FillChar(M, SizeOf(M), FALSE); for i:=1 to N begin Write('A[', i, ']= '); ReadLn(A[i]); if M[A[i]] then Check := FALSE else M[A[i]] := TRUE; end; for i:=1 to N begin Write('B[', i, ']= '); ReadLn(B[i]); if M[B[i]] then Check := FALSE else M[B[i]] := TRUE; end; if Check then WriteLn('Phan biet') else WriteLn('Khong phan biet'); lMax:=0; for i:=1 to N for j:=1 to N begin l:=0; while (i+l

Ngày đăng: 31/12/2022, 19:37

Tài liệu liên quan