SỞ GIÁO DỤC VÀ ĐÀO TẠO
HẢI DƯƠNG
ĐỀ CHÍNH THỨC
KỲ THI CHỌN HỌC SINH GIỎI TỈNH
LỚP 12 THPT NĂM HỌC 2011-2012
Môn thi: Tin học
Thời gian làm bài: 180 phút
(Đề thi gồm 2 trang)
TỔNG QUAN VỀ CÁC BÀI THI
Tên file chương trình Dữ liệu vào Dữ liệu ra
Bài 1 BAI1.PAS Màn hình
Bài 2 BAI2.PAS Bàn phím Màn hình
Bài 3 BAI3.PAS DAYSO.INP DAYSO.OUT
Bài 4 BAI4.PAS SUM.INP SUM.OUT
Bài 5 BAI5.PAS MOVE.INP MOVE.OUT
( Chương trình của thí sinh được viết bằng ngôn ngữ TurBo Pascal 7.0 hoặc
Free Pascal )
Hãy lập trình giải các bài toán sau:
Bài 1: Số đối xứng (2 điểm)
Tìm các số nhiên N (100<N<47 000) thoả mãn: N và N2 đều là số đối
xứng (Số đối xứng là số nếu viết các chữ số của nó theo thứ tự ngược lại thì giá
trị của nó không thay đổi, ví dụ số 10301 hay 2332 là các số đối xứng).
Kết quả đưa ra màn hình gồm một số dòng, trên mỗi dòng ghi 2 số N và
N2, các số cách nhau tối thiểu một dấu cách.
Bài 2: Số chữ số 0 tận cùng (1.5 điểm)
Tính số chữ số 0 tận cùng của N! = 1*2*3* *N, với số nguyên dương
N≤109.
N nhập từ bàn phím, kết quả đưa ra màn hình gồm một số nguyên là số
chữ số 0 tận cùng của N! đã tìm được.
Ví dụ: N=12 , kết quả đưa ra màn hình là 2.
Bài 3: Các số khác nhau (2.5 điểm)
Cho dãy gồm N số nguyên dương (N≤ 1000). Hãy kiểm tra xem có bao
nhiêu số khác nhau trong dãy.
• Dữ liệu vào: Từ tệp DAYSO.INP gồm dòng đầu là số N, trong các dòng
sau ghi các số của dãy, mỗi số cách nhau tối thiểu một dấu cách.
• Kết quả: Ghi ra tệp DAYSO.OUT dòng đầu ghi số nguyên K, là số lượng
các số khác nhau trong dãy. Trong các dòng sau ghi K số khác nhau tìm được
trong dãy, mỗi dòng ghi 15 số.
Ví dụ
Trang 1
DAYSO.INP DAYSO.OUT
10
5 8 12 5 6 8 5 8 4 9
6
5 8 12 6 4 9
Bài 4. Tổng các số (2 điểm)
Cho số nguyên N (1 ≤ N ≤ 109). Bằng cách sử dụng các chữ số liên tiếp
của N (viết trong hệ thập phân), ta thu được các số nguyên khác nhau. Hãy tính
tổng của các số nguyên này.
Ví dụ: Nếu N = 202, có thể thu được các số: 2, 0, 2, 20, 02, 202. Bỏ đi các
số nguyên trùng nhau ta được các số: 2, 0, 20, 202. Khi đó tổng cần tìm sẽ là
2+0+20+202=224.
• Dữ liệu vào: Từ tệp SUM.INP, gồm 10 dòng, mỗi dòng là một số nguyên
N (điều kiện : 1 ≤ N ≤ 109). ;
• Kết quả: Đưa ra tệp SUM.OUT, gồm 10 dòng, mỗi dòng là tổng tìm được
tương ứng với các dòng trong tệp SUM.INP.
SUM.INP SUM.OUT
202
6742
224
8360
Bài 5: Đổi chỗ (2 điểm)
Tìm số tự nhiên nhỏ nhất có chữ số hàng đơn vị là D, sao cho khi chuyển
chữ số hàng đơn vị lên vị trí trước chữ số đầu tiên của số đó thì được số mới gấp
K lần số cũ.
• Dữ liệu vào: Nhập từ tệp MOVE.INP gồm 2 số nguyên D và K, các số
cách nhau tối thiểu một dấu cách.
• Kết quả: Ghi vào tệp MOVE.OUT số tìm được, hoặc -1 nếu không tìm
được số thoả mãn.
Ví dụ
MOVE.INP MOVE.OUT
7 5 142857
Hết
Họ và tên: Số báo danh:
Chữ ký giám thị 1:
Chữ ký giám thị 2:
Trang 2