Vndoc.com xin gửi đến các bạn: Đề thi học sinh giỏi lớp 12 THPT tỉnh Hà Nam năm 2011 - 2012 môn Tin học (Có đáp án).
Đề thi học sinh giỏi môn Tin học:
SỞ GIÁO DỤC VÀ ĐÀO TẠO
|
KỲ THI CHỌN HỌC SINH GIỎI TỈNH LỚP 12 THPT
|
BÀI 1: (7,0 điểm).
Để quản lí việc cho thuê phòng nghỉ của một khách sạn, người ta dùng 4 bảng sau:
Bảng TBL_LoaiPhong (thông tin về loại phòng mà khách cần thuê)
Bảng TBL_DangKy (thông tin về việc đăng ký thuê phòng của khách hàng)
Bảng TBL_KhachHang (thông tin chi tiết về khách hàng thuê phòng)
Bảng TBL_DoiTuongKH (thông tin về đối tượng khách hàng thuê phòng)
Câu a: Tạo một tệp CSDL có tên QLTHUEPHONG.MDB, thiết kế 4 bảng có tên và cấu trúc như trên, xác định khoá chính trong các bảng, từ đó thiết lập mối quan hệ giữa các bảng trên.
Câu b: Nhập dữ liệu cho 4 bảng trên theo các thông tin sau:
1, Nhập dữ liệu bảng TBL_LoaiPhong
2, Nhập dữ liệu bảng TBL_DoiTuongKH
3, Nhập dữ liệu bảng TBL_DangKy và bảng TBL_KhachHang
Câu c: Tạo Query có tên Qry_KhachHang. Mẫu hỏi hiển thị danh sách khách hàng thuê phòng vào các ngày 30/4, 1/5 (tính theo ngày vào) là Nữ khách hàng ở phòng loại B và có độ tuổi lớn hơn hoặc bằng 20. Phải sắp xếp theo thứ tự tăng dần về TenKH (tên khách hàng), gồm các cột: LoaiPhong, SoPhong, TenKH, NgaySinh, GioiTinh, NgayVao.
Câu d: Tạo Query có tên Qry_ThanhToan. Mẫu hỏi hiển thị danh sách khách hàng thuê phòng được sắp xếp theo thứ tự tăng dần về SoPhong (số phòng), gồm các cột: MaDK, SoPhong, LoaiPhong, DoiTuongKH, TenKH, NgayVao, NgayRa, SoNgayO (số ngày khách ở), DonGia, ThanhTien (tiền khách phải trả), GiamGia (giảm giá thuê phòng), ThucThu (thực thu của khách sạn).
Trong đó:
1, SoNgayO = NgayRa – NgayVao
2, Thành tiền (ThanhTien):
Nếu số ngày ở 7: ThanhTien = DonGia x SoNgayO
Nếu 7 < số ngày ở 20: ThanhTien = DonGia x SoNgayO x 0.97 (Giảm 3%)
Nếu số ngày ở > 20: ThanhTien = DonGia x SoNgayO x 0.95 (Giảm 5%)
3, Giảm giá (GiamGia):
Nếu là khách vãng lai: GiamGia = 0
Nếu là khách quen: GiamGia = 5% x ThanhTien
Nếu là khách có thẻ bảo hiểm: GiamGia = 7% x ThanhTien
4, ThucThu = ThanhTien - GiamGia
Câu e: Hãy tạo Subform có tên Frm_LoaiPhong và trình bày theo mẫu sau:
Hãy lập trình giải quyết các bài toán sau đây bằng ngôn ngữ Pascal:
BÀI 2: (7,0 ĐIỂM). TỔNG SỐ TÊN FILE CHƯƠNG TRÌNH TONGSO.PAS
Một dãy số được viết lần lượt theo thứ tự như sau: 1 số 1, 2 số 2, 3 số 3, 4 số 4, và 5 số 5, ....
(1, 2, 2, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 5,...)
Tổng các số nguyên từ số nguyên thứ 1 đến số nguyên thứ 3 là : 1 + 2 + 2 = 5.
Hãy tính tổng các số nguyên trong dãy số trên kể từ số nguyên thứ A trong dãy đến số nguyên thứ B trong dãy.
Yêu cầu:
* Dữ liệu vào: đọc từ file văn bản: TONGSO.INP
Chỉ có 1 dòng ghi 2 số nguyên A và B ( )
* Kết quả ghi ở file: TONGSO.OUT
Chỉ có một dòng duy nhất ghi giá trị tổng các số trong dãy tính từ số nguyên thứ A đến số nguyên thứ B.
Ghi chú: (Các số trên cùng một dòng trong file cách nhau ít nhất bởi một dấu cách trắng)
BÀI 3: (6,0 ĐIỂM). SỐ MAY MẮN TÊN FILE CHƯƠNG TRÌNH MAYMAN.PAS
Chữ số 4 và chữ số 7 là các chữ số may mắn, còn các chữ số khác là không may mắn. Một số nguyên chỉ chứa các chữ số may mắn 4 và 7 (biểu diễn ở hệ thập phân) gọi là số may mắn. Dãy các số nguyên may mắn sắp theo thứ tự: 4; 7; 44; 47; 74; 77; 444; ... Chúng ta cần tìm số nguyên may mắn thứ K trong dãy số nguyên may mắn trên.
Yêu cầu:
* Dữ liệu vào: đọc từ file văn bản: MAYMAN.INP
Chỉ một dòng duy nhất chứa 1 số nguyên K (1 ≤ K ≤ 109)
* Kết quả ghi: ở file văn bản: MAYMAN.OUT
Chỉ một dòng duy nhất chứa 1 số là số nguyên may mắn thứ K.