SỞ GD&ĐT QUẢNG BÌNH
ĐỀ CHÍNH THỨC
SBD………………..
KÌ THI TUYỂN SINH VÀO LỚP 10 THPT
NĂM HỌC 2015-2016
Khóa ngày 19-6-2015
Mơn: Tin học (chun)
Thời gian: 150 phút (không kể thời gian giao đề)
Đề gồm có 02 trang
ĐỀ RA
Sử dụng ngơn ngữ lập trình Turbo Pascal để lập trình giải các bài tốn sau:
Câu 1: (2,0 điểm) Diện tích hình chữ nhật
CHUNHAT.PAS
Cho hai số ngun dương a, b lần lượt là độ dài hai cạnh của hình chữ nhật.
u cầu: Tính diện tích hình chữ nhật.
Dữ liệu vào: Nhập hai số a và b từ bàn phím (0 < a, b ≤ 32766).
Dữ liệu ra: In ra màn hình số K là diện tích hình chữ nhật tính được.
Ví dụ: Dữ liệu vào:
Nhap vao do dai canh thu nhat: 4
Nhap vao do dai canh thu hai: 3
Dữ liệu ra:
Dien tich hinh chu nhat la: 12
Câu 2: (2,0 điểm) Số chính phương
SOCP.PAS
Người ta định nghĩa: Số chính phương là một số nguyên dương mà căn bậc hai
của nó cũng là một số nguyên dương.
Cho một số nguyên K.
Yêu cầu: Kiểm tra số nguyên K có phải là số chính phương khơng.
Dữ liệu vào: Nhập số K từ bàn phím (0 < K ≤ 2×109).
Dữ liệu ra: Nếu K là số chính phương thì ghi ra dịng chữ “So chinh phuong”,
ngược lại ghi ra dòng chữ “Khong phai so chinh phuong”.
Ví dụ: Dữ liệu vào:
Nhap vao mot so nguyen duong: 9
Dữ liệu ra:
So chinh phuong
Câu 3: (2,0 điểm) Tổng của các chữ số
CHUSO.PAS
Cho một số tự nhiên N
Yêu cầu: Tính tổng giá trị các chữ số của N.
Dữ liệu vào: Cho trong file văn bản CHUSO.INP, có cấu trúc như sau:
- Dòng 1: Ghi số tự nhiên N (N< 2×109).
Dữ liệu ra: Ghi ra file văn bản CHUSO.OUT, theo cấu trúc như sau:
- Dòng 1: Ghi số nguyên dương K là tổng giá trị các chữ số của N.
Ví dụ:
CHUSO.INP CHUSO.OUT
168
15
Trang 1/2
Câu 4: (2,0 điểm) Số nguyên tố
SONT.PAS
Số nguyên dương N được gọi là số nguyên tố nếu N chỉ có 2 ước số là 1 và
chính nó.
Ví dụ: 17 là số ngun tố vì 17 chỉ có hai ước số là 1 và 17.
Cho 2 số nguyên dương P và Q.
Yêu cầu: Liệt kê tất cả các số nguyên tố nằm trong đoạn [P, Q].
Dữ liệu vào: Cho trong file văn bản SONT.INP có cấu trúc như sau:
- Dịng 1: Ghi 2 số P Q, hai số được ghi cách nhau ít nhất một dấu cách
(0< P ≤ Q ≤ 65535).
Dữ liệu ra: Ghi ra file văn bản SONT.OUT theo cấu trúc như sau:
- Dòng 1: Ghi số nguyên dương D là số lượng các số nguyên tố tìm được.
- Dịng 2: Ghi D số ngun tố tìm được, các số được ghi cách nhau ít nhất một
dấu cách và theo thứ tự tăng dần của giá trị.
Ví dụ:
SONT.INP
SONT.OUT
SONT.INP
SONT.OUT
1 7
4
10 10
0
2 3 5 7
Chú ý: Chương trình thực hiện khơng quá 3 giây với mọi bộ dữ liệu vào
Câu 5: (2,0 điểm) Dãy tăng liên tiếp dài nhất
DAYTANG.PAS
Người ta định nghĩa:
Dãy số a1, a2, ..., aN (N > 1) được gọi là dãy tăng nếu a1< a2
Dãy số b1, b2, ..., bM (M > 1) được gọi là dãy con liên tiếp của dãy a1, a2, ..., aN
nếu b1, b2, ..., bM theo thứ tự được lấy từ các phần tử liên tiếp của dãy số a1, a2, ..., aN.
Dãy số b1, b2, ..., bM được gọi là dãy con tăng liên tiếp dài nhất của dãy
a1, a2, ..., aN nếu thỏa mãn đồng thời ba điều kiện sau:
+ b1, b2, ..., bM là dãy con liên tiếp của a1, a2, ..., aN;
+ b1, b2, ..., bM là dãy tăng;
+ M lớn nhất.
Ví dụ: Cho dãy số A=(1 3 5 4 6) ta có 4 dãy con tăng liên tiếp là: (1 3); (3 5);
(1 3 5); (4 6) và dãy con tăng liên tiếp dài nhất là (1 3 5)
Cho dãy số nguyên gồm N phần tử a1, a2, ..., aN.
Yêu cầu: Tìm số lượng phần tử của dãy con tăng liên tiếp dài nhất có trong dãy
số đã cho.
Dữ liệu vào: Cho trong file văn bản DAYTANG.INP có cấu trúc như sau:
- Dịng 1: Ghi số N (1 < N ≤ 10000).
- Dòng 2: Ghi N số a1, a2, ..., aN các số cách nhau ít nhất một dấu cách
(0 ≤ ai ≤ 32767, 1 < i ≤ N)
Dữ liệu ra: Ghi ra file văn bản DAYTANG.OUT theo cấu trúc như sau:
- Dòng 1: Ghi số K là số lượng phần tử của dãy con tăng liên tiếp dài nhất tìm
được. Nếu khơng tồn tại dãy con tăng liên tiếp thì ghi số 1.
Ví dụ:
DAYTANG.INP DAYTANG.OUT
5
3
1 3 5 4 6
Chú ý: Chương trình thực hiện không quá 3 giây với mọi bộ dữ liệu vào
===== Hết =====
Trang 2/2
HƯỚNG DẪN CHÁM VÀ ĐÁP ÁN
ĐỀ THI TUYỂN SINH VÀO LỚP 10 THPT NĂM HỌC 2015 - 2016
MÔN: TIN HỌC (CHUYÊN)
(Đáp án gồm 03 trang)
I- Phương pháp:
- Giám khảo tạo bộ dữ liệu vào, tính tốn kết quả. Thực hiện chương trình
của học sinh và so sánh kết quả.
- Giám khảo có thể sử dụng chương trình gợi ý dưới đây để tính tốn kết
quả của dữ liệu vào.
- Đối với mỗi câu, giám khảo phải tạo được 04 bộ test, chương trình học
sinh đúng 01 bộ test giám khảo cho 0.5 điểm. Trong 04 bộ test giám khảo phải
tạo được ít nhất 01 bộ test có dữ liệu lớn.
- Đối với câu 4, 5 chương trình học sinh thực hiện không quá 3 giây với tất
cả các bộ test.
II- Chương trình gợi ý:
program chunhat;
uses crt;
var s,a,b:longint;
begin
clrscr;
write('Nhap vao do dai canh thu nhat:');
readln(a);
write('Nhap vao do dai canh thu hai:');
readln(b);
s:=a;
s:=s*b;
writeln('Dien tich hinh chu nhat la: ',s);
readln;
end.
program So_cp;
uses crt;
var k,l:longint;
r:real;
begin
clrscr;
write('Nhap vao mot so nguyen duong: ');
readln(k);
r:=sqrt(k);
l:=trunc(r);
Trang 3/2
if l=r then write('So chinh phuong')
else write('Khong phai so chinh phuong');
readln;
end.
Program chuso;
const fi='chuso.inp';
fo='chuso.out';
var s:string;
i,j,k,tong:integer;
f:text;
Begin
assign(f,fi);
reset(f);
readln(f,s);
close(f);
tong:=0;
For i:=1 to length(s) do
Begin
val(s[i],k,j);
tong:=tong+k;
end;
assign(f,fo);
rewrite(f);
writeln(f,tong);
close(f);
end.
Program sont;
const fi='sont.inp';
fo='sont.out';
var a:array[1..10000] of word;
q,p,i,n:word;
f:text;
Function nt(n:word):boolean;
var nto:boolean;
k:word;
begin
nto:=true;
k:=2;
while (nto) and (k<=trunc(sqrt(n))) do
begin
if n mod k = 0 then nto:=false;
k:=k+1;
Trang 4/2
end;
nt:=nto;
if n<2 then nt:=false;
end;
Begin
assign(f,fi);
reset(f);
readln(f,p,q);
close(f);
n:=0;
for i:=p to q do
if nt(i) then
begin
n:=n+1;
a[n]:=i;
end;
assign(f,fo);
rewrite(f);
writeln(f,n);
for i:=1 to n do
write(f,a[i],' ');
close(f);
end.
Program daytang;
const fi='daytang.inp';
fo='daytang.out';
var a:array[1..10000] of word;
max,i,j,k,tong,n:word;
f:text;
Begin
assign(f,fi);
reset(f);
readln(f,n);
for i:=1 to n do
read(f,a[i]);
close(f);
max:=1;
i:=1;
while (i<=n) do
Begin
tong:=1;
while (a[i+1]>a[i]) and (i
begin
Trang 5/2
i:=i+1;
tong:=tong+1;
end;
if tong>max then max:=tong;
i:=i+1;
end;
assign(f,fo);
rewrite(f);
writeln(f,max);
close(f);
end.
Trang 6/2