ĐỀ THI HSG TIN 9
Bài 1. (4,0 điểm)
Viết chương trình nhập số tự nhiên n và tính giá trị biểu thức Sn:
Sn= 1/2 + 2/3 + 3/4 +.......+ n/n+1
Bài 2.(4,0 điểm)
Viết chương trình kiểm tra một số tự nhiên N (N<10000) được nhập vào từ bàn phím có phải là số hoàn chỉnh hay không?
Biết rằng số hoàn chỉnh là một số có tổng các ước nhỏ hơn nó bằng chính nó.
Ví dụ: Số 6 có các ước nhỏ hơn nó là 1, 2, 3. Tổng các ước 1 + 2 + 3 = 6. Vậy 6 được gọi là số hoàn chỉnh.
Bài 3. (7,0 điểm)
Viết chương trình nhập từ bàn phím hai số nguyên dương a, b và thực hiện:
a) In ra số đối xứng của số nguyên dương a và đối xứng của số nguyên dương b.
b) In ra tổng của số đối xứng với a và số đối xứng với b
Biết rằng ta gọi số “đối xứng” với số a là số nguyên dương thu được từ a bằng cách đảo ngược thứ tự các chữ số của a.
Ví dụ: nhập số a = 12, số b = 23 cho kết quả:
a) Số đối xứng với số a = 12 là 21; Số đối xứng với số b = 23 là 32.
b) Tổng của số đối xứng với a = 12 và số đối xứng với b = 23 là: 21 + 32 = 53.
Bài 4.(5,0 điểm)
Viết chương trình tạo mảng bao gồm N số nguyên tố đầu tiên. Số tự nhiên N được nhập từ bàn phím.
-------Hết------
Họ và tên thí sinh: ...................................................... SBD.........................
* Lưu ý: Cán bộ coi thi không phải giải thích gì thêm.
HƯỚNG DẪN CHẤM THI - CHỌN HỌC SINH GIỎI LỚP 9
Môn: Tin học
Hướng dẫn chấm trên máy tính.
Chấm theo bộ Test thử, đúng test nào giám khảo cho điểm test đó.
Bài 1. (4,0 điểm)
Test Nhập số n Kết quả (In ra màn hình) Điểm
1 1 0.50000 0,5 đ
2 2 1.16667 0,5 đ
3 50 46.48119 1,0 đ
4 100 95.80272 1,0 đ
5 1000 993.51353 1,0 đ
Lưu ý: Đây là kết quả đã làm tròn đến 5 chữ số thập phân.
Bài 2. (4,0 điểm)
Test Nhập số n Kết quả (In ra màn hình) Điểm
1 2 Không là số hoàn chỉnh 1,0 đ
2 6 Số hoàn chỉnh 1,0 đ
3 496 Số hoàn chỉnh 1,0 đ
4 8128 Số hoàn chỉnh 1,0 đ
Bài 3. (7,0 điểm)
Test Nhập số a Nhập số b Kết quả (In ra màn hình) Điểm
Số đối xứng số a Số đối xứng số b Tổng của hai số đối xứng a,b
1 12 23 21 32 53 1,5 đ
2 123 456 321 654 975 1,5 đ
3 1357 2468 7531 8642 16173 2,0 đ
4 2809 2014 9082 4102 13184 2,0 đ
Bài 4. (5,0 điểm)
Test Nhập số n Kết quả (In ra màn hình) Điểm
1 1 2 1,0 đ
2 3 2; 3; 5 1,0 đ
3 10 2; 3; 5; 7; 11; 13; 17; 19; 23; 29 1,5 đ
4 50 2; 3; 5; 7; ...; 227; 229 1,5 đ
Hướng dẫn chấm trên giấy.
Bài Chương trình Điểm
1
(4,0đ) Program Bai1;
Uses Crt;
Var
n, i: Integer;
s: Real; 1,0 đ
BEGIN
Clrscr;
Write(‘ Nhap so tu nhien n= '); Readln(n); 0,5 đ
s:= 0;
For i:= 1 to n do s:= s + i/ (i + 1); 1,5 đ
Writeln(‘ Gia tri bieu thuc Sn la: ’,s:5:5);
Readln
END. 1,0 đ
2
(4,0đ) Program Bai2;
Uses Crt;
Var
n, i, s: Longint; 1,0 đ
BEGIN
Clrscr;
Write(‘ Nhap so tu nhien n: '); Readln(n); 0,5 đ
s:= 0;
For i:= 1 to n - 1 do
If n mod i = 0 then s:= s + i; 1,5 đ
If s = n then writeln(n, ‘ : la so hoan chinh ’)
Else writeln(n, ‘ : khong la so hoan chinh ’)
Readln
END. 1,0 đ
3
(7,0đ) Program Bai3;
Uses crt;
Var a, b: Longint; 1,0 đ
Function DX(a: integer):integer;
Var so: Integer;
Begin
so:= 0;
Repeat
so:= so*10+a mod 10; a:= a div 10;
Until a = 0;
DX:= so;
end;
2,0 đ
BEGIN
Clrscr;
Write(' Nhap so a= '); readln(a);
Write(' Nhap so b= '); readln(b); 1,0 đ
Writeln('So doi xung so ',a,' la: ',DX(a));
Writeln('So doi xung so ',b,' la: ',DX(b)); 2,0 đ
Writeln('Tong cua hai so doi xung la: ',DX(a)+DX(b));
readln;
END. 1,0 đ
4
(5,0đ) Program Bai4;
Uses crt;
Var
a:Array[1..1000] of Integer;
i, n: Byte;
j, k: Integer;
kt:boolean; 2,0 đ
BEGIN
clrscr;
Write(' Nhap kich thuoc N cua mang: '); Readln(n);
a[1]:= 2;
For i:= 2 to n do
Begin
j:= a[i-1];
Repeat
Inc(j);
kt:= True;
For k:= 2 to j div 2 do
If j mod k = 0 then kt:= False;
Until kt; 2,0 đ
a[i]:= j;
End;
Writeln(' Mang N so nguyen to dau tien: ');
For i:=1 to n do Write(a[i]:4);
Readln;
END. 1,0 đ