You are on page 1of 5

SỞ GIÁO DỤC VÀ ĐÀO TẠO KỲ THI CHỌN HỌC SINH GIỎI THPT

HÀ NAM NĂM HỌC 2016 – 2017


Môn: TIN HỌC LỚP 12
ĐỀ CHÍNH THỨC (Thời gian làm bài: 180 phút)
(Đề thi có 04 trang)

Tổng quan bài thi:


PHẦN A (6,0 điểm): Hệ quản trị cơ sở dữ liệu Microsoft Access
PHẦN B (14,0 điểm): Thí sinh lập trình để giải quyết các bài toán sau:
STT Tên bài Tên tệp chương trình Tên tệp dữ liệu vào Tên tệp dữ liệu ra Thời gian
1 Hình chữ nhật RECT.* RECT.INP RECT.OUT 1s/test
2 Đoạn con SUBSEQ.* SUBSEQ.INP SUBSEQ.OUT 1s/test
3 Số lớn nhất MAXNUM.* MAXNUM.INP MAXNUM.OUT 1s/test
Đuôi * có thể là PAS hoặc CPP tùy thuộc vào ngôn ngữ lập trình là Free Pascal hay Code Block.
---------------------------------------------------------------------------------------------------
PHẦN A (6,0 điểm):
Để quản lí việc chuyên chở hành khách người ta dùng một cơ sở dữ liệu gồm các bảng sau:
 Bảng TUYENDUONG (thông tin về tuyến đường)
TT Field Name Data Type Size Description
1 MATUYEN Text 4 Mã tuyến đường
2 TENTUYEN Text 40 Tên tuyến đường
3 SOKM Number Byte Số Kilômét
4 GIAVE Number Integer Giá vé
 Bảng NHATTRINH (thông tin về nhật trình)
TT Field Name Data Type Size Description
1 SONT Text 3 Số nhật trình
2 NGAY Date/Time Short Date Ngày, tháng, năm
3 MAXE Text 4 Mã xe
 Bảng CHITIET (thông tin chi tiết về tuyến đường – nhật trình)
TT Field Name Data Type Size Description
1 SONT Text 3 Số nhật trình
2 MATUYEN Text 4 Mã tuyến đường
3 SOVE Number Byte Số vé
 Bảng DMXE (thông tin chi tiết về xe)
TT Field Name Data Type Size Description
1 MAXE Text 4 Mã xe
2 TENXE Text 10 Tên xe
3 TENLAIXE Text 10 Tên lái xe
4 SOCHO Number Byte Số chỗ

Trang 1
a) Tạo một tệp CSDL có tên QLVANTAIHANHKHACH.MDB, thiết kế 4 bảng có tên và cấu
trúc như trên (trường được gạch chân là khóa chính), thiết lập mối quan hệ giữa các bảng và nhập dữ liệu cho
các bảng như sau:

b) Tạo Query thực hiện những yêu cầu sau:


Tạo Query TINHTIEN tính tổng tiền cho mỗi chuyến xe gồm các thông tin sau: SONT;
MATUYEN; SOVE; THANHTIEN với THANHTIEN tính theo công thức: THANHTIEN=SOVE *
GIAVE với điều kiện:
+ Nếu SOVE > SOCHO được giảm 5%.
+Trường hợp khác không được giảm giá.
+ Cột THANHTIEN sắp xếp tăng dần.
c) Tạo Form TUYENDUONG như hình sau:
Yêu cầu:

 Thiết kế form đúng yêu cầu.


 Tạo công thức tính TỔNG TIỀN và tổng tiền tự động cập nhật khi dữ liệu trong form con
thay đổi.
Trang 2
Phần B (14,0 điểm):
Bài 1 (6,0 điểm). HÌNH CHỮ NHẬT
Cho một số nguyên dương n .
Yêu cầu: Tìm một hình chữ nhật có hai cạnh a , b nguyên dương thỏa mãn các điều kiện sau:
 a × b=n
 a≤b
 b−a đạt giá trị nhỏ nhất.
Dữ liệu vào: RECT.INP
Chứa một số nguyên dương n (n ≤ 106 ).
Dữ liệu ra: RECT.OUT
Ghi hai số nguyên dương a , b tìm được.
Ví dụ:
RECT.INP RECT.OUT
6 2 3

Bài 2 (5,0 điểm). ĐOẠN CON

Cho dãy số nguyên a 1 , a2 , … , an (|ai|≤10 ). Một tập hợp khác rỗng các số hạng liên tiếp
9

{ ai , a i+1 , … , ak } với i≤ k gọi là một đoạn con của dãy đó. Với mỗi đoạn con ta tính tổng tất cả các số
hạng của nó.
Yêu cầu: Tìm giá trị nhỏ nhất trong số các tổng của các đoạn con của dãy đã cho.
Dữ liệu vào: Cho trong file SUBSEQ.INP
- Dòng đầu chứa số n
- Dòng tiếp theo chứa n số nguyên a 1 , a2 , … , an.
Dữ liệu ra: Ghi ra file SUBSEQ.OUT tổng nhỏ nhất của đoạn con tìm được.

Trang 3
Ví dụ:
SUBSEQ.INP SUBSEQ.OUT
7 -6
1 -2 1 -4 -1 1 2

Giải thích: Trong ví dụ trên, đoạn con có tổng nhỏ nhất là: -2+1+(-4)+( – 1) = -6.
Các giới hạn:
 40% số test đầu tiên có n ≤ 100 ,|ai|≤100
 30% số test tiếp theo có n ≤ 1000 ,|ai|≤1000
 30% số test còn lại có n ≤ 10 ,|ai|≤10 .
6 9

Bài 3 (3,0 điểm). SỐ LỚN NHẤT


Cho số nguyên X gồm n chữ số trong đó chữ số đầu tiên khác 0 và một số nguyên dương k .
Yêu cầu: Tìm cách xóa đi k chữ số từ số X sao cho các chữ số còn lại tạo thành một số lớn nhất
có thể.
Dữ liệu vào: Cho trong file MAXNUM.INP
- Dòng đầu chứa số nguyên dương k (1 ≤ k ≤ n)
- Dòng tiếp theo chứa số X gồm n chữ số từ 0..9.
Dữ liệu ra: MAXNUM.OUT
Ghi một số duy nhất là kết quả tìm được.
Ví dụ:
MAXNUM.INP MAXNUM.OUT
2 49
3049
Các giới hạn:
 50% tổng số test đầu tiên có n<10
 50% tổng số test tiếp theo có 10 ≤ n≤ 200 .

Hết

Họ và tên thí sinh................................................................... Số báo danh.............................


Người coi thi số 1 .......................................... Người coi thi số 2 ..........................................
Trang 4
Trang 5

You might also like