Đề thi chọn học sinh giỏi lớp 9 - THCS cấp huyện năm học 2012 - 2013 môn: Tin Học

doc 5 trang Người đăng haibmt Lượt xem 3889Lượt tải 4 Download
Bạn đang xem tài liệu "Đề thi chọn học sinh giỏi lớp 9 - THCS cấp huyện năm học 2012 - 2013 môn: Tin Học", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
Đề thi chọn học sinh giỏi lớp 9 - THCS cấp huyện năm học 2012 - 2013 môn: Tin Học
UBND HUYỆN THANH SƠN
 PHềNG GD&ĐT
ĐỀ CHÍNH THỨC
 ( Đề thi cú 01 trang )
ĐỀ THI CHỌN HỌC SINH GIỎI LỚP 9 - THCS CẤP HUYậ́N
 NĂM HỌC 2012 - 2013
 Mụn: Tin học
(Thời gian làm bài 150 phỳt khụng kể thời gian giao đề )
Bài 1 (4,0 điểm). Khởi động chương trỡnh PASCAL, viết chương trỡnh nhập số tự nhiờn n sao cho 5 < n ≤100, nếu nhập sai yờu cầu nhập lại khi nào nhập đỳng thỡ tớnh tổng sn:
- Lưu bài với tờn tợ̀p tin: D:\THIHUYEN\B1SBDxxx.pas (trong đó xxx là sụ́ báo danh của thí sinh).
Bài 2 (6,0 điểm). Viết chương trỡnh trờn ngụn ngữ lập trỡnh PASCAL, nhập vào hai số tự nhiờn x, y sao cho chương trỡnh chỉ cho nhập cỏc số tự nhiờn x, y thỏa món 4 x < 53 và 59 < y 121.
 	- In ra màn hỡnh cỏc số lẻ chia hết cho 3 trong khoảng từ x đến y và đếm cú bao nhiờu số như vậy?
 	- In ra màn hỡnh cỏc số chớnh phương m sao cho x < m < y và đếm cú bao nhiờu số m?
- Lưu bài với tờn tợ̀p tin: D:\THIHUYEN\B2SBDxxx.pas (trong đó xxx là sụ́ báo danh của thí sinh).
Bài 3 (4,0 điểm). Lập chương trỡnh PASCAL thực hiện yờu cầu sau:
	Anh Việt đi chợ mua một mặt hàng cú giỏ trị là N đồng. Trong tỳi anh Việt cú nhiều tờ tiền với mệnh giỏ là 100 đồng, 200 đồng và 1000 đồng. Anh Việt cú thể cú nhiều cỏch trả tiền để mua mặt hàng đú (anh Việt chỉ dựng cỏc tờ tiền mà anh cú sẵn. Anh khụng đưa thừa tiền cho người bỏn vỡ người bỏn khụng cú tiền trả lại).
Yờu cầu: nhập vào từ bàn phớm số N (N nguyờn và 2<N<100 000); đưa ra màn hỡnh tất cả cỏc cỏch trả tiền của anh Việt thỏa món. (Mỗi cỏch trả tiền trờn một dũng, nếu khụng cú cỏch trả tiền thỡ khụng cần thụng bỏo gỡ; chương trình không cần kiểm tra dữ liệu vào từ bàn phím).
- Lưu bài với tờn tợ̀p tin: D:\THIHUYEN\B3SBDxxx.pas (trong đó xxx là sụ́ báo danh của thí sinh).
Bài 4 ( 6,0 điểm). Khởi động chương trỡnh PASCAL, viết chương trỡnh nhập vào một dóy số nguyờn n phần tử, n nhập từ bàn phớm.
- In ra màn hỡnh dóy số vừa nhập xếp theo thứ tự tăng dần.
- In ra màn hỡnh cỏc số nguyờn tố trong dóy số vừa nhập và đếm xem đó nhập vào bao nhiờu số nguyờn tố.
- Lưu bài với tờn tợ̀p tin: D:\THIHUYEN\B4SBDxxx.pas (trong đó xxx là sụ́ báo danh của thí sinh).
––––––––––––––––––– Hết ––––––––––––––––––––
Họ và tờn thớ sinh ........................................................................... SBD....... 
Chỳ ý: Cỏn bộ coi thi khụng giải thớch gỡ thờm
PHềNG GD&ĐT THANH SƠN
HƯỚNG DẪN CHẤM THI CHỌN HSG LỚP 9 - THCS CẤP HUYậ́N 
NĂM HỌC 2012 – 2013
Mụn: Tin học
Yờu cầu chung:
Yờu cầu chương trỡnh chạy thụng suốt.	( 2-3 điểm)
	+ Hoàn thành đỳng phần khai bỏo cỏc biến:	(0,25 điểm)
+ Viết đỳng chương trỡnh nhập mảng:	(0,25 điểm)
+ Viết đỳng thuật toỏn (cỏch giải) tớnh tổng:	(1-2 điểm)
+ Viết đỳng thủ tục tạo và ghi kết quả vào tệp:	(0,5 điểm)	
- 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á 40% sụ́ điờ̉m của cõu.
Bài 1 (4,0 điểm). Khởi động chương trỡnh PASCAL, viết chương trỡnh nhập số tự nhiờn n sao cho 5 < n ≤100, nếu nhập sai yờu cầu nhập lại khi nào nhập đỳng thỡ tớnh tổng sn:
Chương trình tham khảo
Điờ̉m
Uses Crt;
Var 
	n,i:Integer;	
	s:Real;
0,5
BEGIN
ClrScr; 
 Write(‘Nhap so tu nhien n=');Readln(n); 
 While ((n100) do
 Begin
Write(‘Nhap lai n thoa man 5 < n <=100, n = ');Readln(n);
 end;
1
s:=0;
 For i:=1 to n do s:=s+i*(i+1)/((i+2)*(i+3));
1,5
 Write(‘s=’,s:4:3);
0,5
Readln
END.
0,5
Bụ̣ Test thử
n nhập vào
Kết quả thụng bỏo hoặc kết quả S trờn màn hỡnh
4
Nhap lai n thoa man 5 < n <=100, n =
5
1.879
6
2.462
Bài 2 (6,0 điểm). Viết chương trỡnh trờn ngụn ngữ lập trỡnh PASCAL, nhập vào hai số tự nhiờn x, y sao cho chương trỡnh chỉ cho nhập cỏc số tự nhiờn x, y thỏa món 4 x < 53 và 59 < y 121.
 	- In ra màn hỡnh cỏc số lẻ chia hết cho 3 trong khoảng từ x đến y và đếm cú bao nhiờu số như vậy.
 	- In ra màn hỡnh cỏc số chớnh phương m sao cho x < m < y và đếm cú bao nhiờu số m.
Chương trình tham khảo
Điờ̉m
Uses Crt;
var x,y,i,d:longint;
BEGIN
ClrScr; 
 d:=0;
Write(‘Nhap so tu nhien x, y =');Readln(x,y); 
 While ((x=53) OR ( y121) ) do
 Begin
Write(‘Nhap lai x, y thoa man 4<=x< 53 va 59<y<=121’); Readln(n);
 end;
writeln(‘Cac so le chia het cho 3 thoa man la:');
0,5
0,5
0,5
0,5
for i:=x to y do
 if (i mod 20)and(i mod 3=0) then
 begin
 write(i:6); 
d: = d+1; end;
0,5
0,5
0,5
writeln;
writeln('Co tat ca:',d,' so le chia het cho 3');
writeln('Cac so chinh phuong lon hon’, x:4,’va nho hon’, y:4, ‘la: ‘);
d:=0;
For i: = x +1 to y -1 do
 IF sqr(trunc(sqrt(i))) = i then
 Begin write (I: 7); d:=d+1; end;
writeln; writeln(‘ Co tat ca ‘,d:6,’ so chinh phuong’);
readln;
End.
0,5
0,5
0,5
0,5
0,5
Bụ̣ Test thử
Dữ liệu vào
Dữ liệu ra
3 64
4 64
Nhap lai x, y thoa man 4<=x< 53 va 59<y<=121
Cac so le chia het cho 3 thoa man la: 
9 15 21 27 33 39 45 51 57 63
Co tat ca: 10 so le chia het cho 3
Cac so chinh phuong lon hon 4 va nho hon 64 la:
9 16 25 36 49 
Co tat ca 5 so chinh phuong
Bài 3 (4,0 điểm). Lập chương trỡnh thực hiện yờu cầu sau:
	Anh Việt đi chợ mua một mặt hàng cú giỏ trị là N đồng. Trong tỳi anh Việt cú nhiều tờ tiền với mệnh giỏ là 100 đồng, 200 đồng và 1000 đồng. Anh Việt cú thể cú nhiều cỏch trả tiền để mua mặt hàng đú (anh Việt chỉ dựng cỏc tờ tiền mà anh cú sẵn. Anh khụng đưa thừa tiền cho người bỏn vỡ người bỏn khụng cú tiền trả lại).
Yờu cầu: nhập vào từ bàn phớm số N (N nguyờn và 2<N<100 000); đưa ra màn hỡnh tất cả cỏc cỏch trả tiền của anh Việt thỏa món. (Mỗi cỏch trả tiền trờn một dũng, nếu khụng cú cỏch thỡ khụng cần thụng bỏo gỡ)
Lưu bài với tờn tập tin: D:\THI\CAPHUYEN\Bai3.pas
Chương trình tham khảo
Điờ̉m
Program tinhtien; 
Var N,K,a,b,c:Longint;
0,5
 Begin
	Write('Vao N='); Readln(N);
	K:=0;
	If N mod 100=0 Then
 	 For a:=0 to N div 1000 do
 For b:=0 to (N-1000*a) div 200 do
 Begin c:=(N-1000*a-200*b) div 100;
Writeln(c,' x 100 +',b,' x 200 + ',a,' x 1000');
 End;
 readln;
End.
0.5
0,5
0,5
0,5
1,0
0,5
Bụ̣ Test thử
Vao N=1000
10 x 100 + 0 x 200 + 0 x 1000
8 x 100 + 1 x 200 + 0 x 1000
6 x 100 + 2 x 200 + 0 x 1000
4 x 100 + 3 x 200 + 0 x 1000
2 x 100 + 4 x 200 + 0 x 1000
0 x 100 + 5 x 200 + 0 x 1000
0 x 100 + 0 x 200 + 1 x 1000
Bài 4 ( 6,0 điểm). Khởi động chương trỡnh PASCAL, viết chương trỡnh nhập vào một dóy số nguyờn n phần tử, n nhập từ bàn phớm 
- In ra màn hỡnh dóy số vừa nhập xếp theo thứ tự tăng dần.
- In ra màn hỡnh cỏc số nguyờn tố trong dóy số vừa nhập và đếm xem đó nhập vào bao nhiờu số nguyờn tố.
Lưu bài với tờn tập tin: D:\THI\CAPHUYEN\Bai4.pas 
 Chương trình tham khảo
Điờ̉m
Uses crt;
Var
 A: Array[1..100] of Integer;
 n,i,j,dem: Byte;
 tg: Integer;
function NT(n:longint):boolean;
 var i:longint;
 Kt:boolean;
 begin
 Kt:=true;
 for i:=2 to round(sqrt(n)) do
 if n mod i=0 then Kt:=false;
 NT:=Kt;
 end;
Begin
 Write('Hay nhap vao so phan tu cua mang:');
 Readln(n);
 For i:= 1 to n do
 Begin
 Write('Nhap a[',i,']= '); Readln(a[i]);
 End;
 For i:= 1 to n-1 do
 For j:= i to n do
 If a[i]>a[j] then
 Begin
 	tg:= a[i];	a[i]:=a[j];	a[j]:= tg;
	 End;
 Writeln('Mang sau khi da sap xep la');
 For i:= 1 to n do Write(a[i]:6);
 Writeln;dem:=0;
Writeln('Nhung so nguyen to trong mang la');
For i:=1 to n do
 If (a[i]>=2) and NT(a[i]) then
 Begin
 Write(a[i]:7); dem:= dem+1;
 End;
 Writeln; Writeln('so phan tu la so nguyen to trong mang la:',dem) ;
Readln;End.
 0,5
 1,5
 0,5
 1,5
 0,5
 0,5
 0,5
 0,5
Ghi chỳ: Học sinh cú thể khụng sử dụng chương trỡnh con nhưng chạy đỳng kết quả test vẫn cho điểm tối đa.
Bụ̣ Test thử
N = 6;a[1]=3; a[2]=-12; a[3]=-789; a[4]=71; a[5]=8; a[6]=3456;
Mang sau khi sap xep: -789 -12 3 8 71 3456
Nhung so nguyen to trong mang 3 71
 So phan tu la so nguyen to trong mang la: 2 

Tài liệu đính kèm:

  • docTin_Hoc_Pascal_tham_khao.doc