đề thi tham khảo HSG 2015-2016

Chia sẻ bởi Trương Văn Nghĩa | Ngày 17/10/2018 | 51

Chia sẻ tài liệu: đề thi tham khảo HSG 2015-2016 thuộc Tin học 8

Nội dung tài liệu:

PHÒNG GD & ĐTTX DUYÊN HẢI
TRƯỜNG THCS TRƯỜNG LONG HÒA

ĐỀ THI HỌC SINH GIỎI CẤP THỊ XÃ
NĂM HỌC: 2015-2016
MÔN: TIN HỌC 9
Thời gian: 150 phút (không kể thời gian giao đề)



NỘI DUNG ĐỀ:

Câu 1: (6 điểm)
Viết chương trình nhập vào một số nguyên.
In ra màn hình các ước của số đó?
Số đã cho có bao nhiêu ước?
Ví dụ: Nhập vào số nguyên: 28
Các ước của 28 là: 1 2 4 7 14 28
Số 28 có: 6 ước.

Câu 2: (6 điểm) Dãy fibonacci có 2 phần tử đầu là 1,1 . Các phần tử sau bằng tổng hai phần tử đứng ngay trước nó: 1, 1, 2, 3, 5, 8, 13, 21….Nếu kí hiệu Fn là số thứ n của dãy Fibonacci, ta có:
F1 = F2 = 1, Fn = Fn-1 + Fn-2, n>=3
Hãy viết chương trình nhập từ bàn phím số nguyên n và tính số hạng thứ n của dãy Fibonacci
Câu 3: (8 điểm) Nhập vào một số nguyên từ bàn phím. Chèn số đó vào mảng sao cho mảng vẫn có thứ tự giảm dần. (không được xếp lại mảng)


ĐÁP ÁN

CÂU
ĐÁP ÁN
ĐỂM

Câu 1
(6 điểm)
Program Timuoc;
Uses crt;
Var a,i,dem: integer;
1


Begin
Writeln (‘Nhap vao mot so nguyen: ’);
Readln (a);
1


 dem:=0;
Write (‘Cac uoc cua so’,a, ‘la: ’);
1


 For i:=1 to a do
If (a mod i = 0) then
Begin
Write (i,‘ ’);
dem:=dem+1;
end;
2


 Write (‘So’,a, ‘co’,dem, ‘uoc’);
Readln;
End.
1

Câu 2
(6 điểm)
program soncuafibonacy;
var a,b,c,i,n:longint;
1


begin
write (`nhap so hang can tinh`);readln(n);
1


 if(n=1)or(n=2) then c:=1;
else
begin a:=1; b:=1;
for i:=3 to n do
begin
c:=a+b;
a:=b;b:=c;
end;
end;
3


writeln(`so hang thu n cua day fibonaci la:`,c);
readln
end.
1

Câu 3
(8 điểm)
Program chen_so_vao_mang;
Uses Crt;
Var A:Array[1..50] of integer;
i, n, tg, j, m: Byte;
1


Begin
Clrscr;
Write(`nhap so phan tu mang:n= `);readln(n);
1


 for i:=1 to n do
begin
write(`A[`,i,`]= `);Readln(a[i]);
end;
1


Write(`nhap so nguyen m= `);readln(m);
For i:=1 to n do
begin
for j:=1 to i do
if a[i]>a[j] then
begin
tg:=a[i];
a[i]:=a[j];
a[j]:=tg;
end;
end;
2


For i:=n downto 1 do
if a[i]>m then a[n+1]:=m;
For i:=n downto 1 do
if a[i]<=m then
begin
A[i+1]:=a[i];
a[i]:=m;
end;
2



Writeln(‘Day so sau khi chen them so la:’);
for i:=1 to n+1 do
write(a[i],` `);
readln;
End.


1

GVBM




Võ Thị Cẩm Huyền

* Một số tài liệu cũ có thể bị lỗi font khi hiển thị do dùng bộ mã không phải Unikey ...

Người chia sẻ: Trương Văn Nghĩa
Dung lượng: 47,00KB| Lượt tài: 1
Loại file: doc
Nguồn : Chưa rõ
(Tài liệu chưa được thẩm định)