| ĐỀ THI HỌC SINH GIỎI VĂN HÓA LỚP 9 NĂM HỌC 2018- 2019 Môn thi : TIN HỌC Thời gian làm bài : 120 phút( Không kể thời gian giao đề) |
Em hãy dùng ngôn ngữ lập trình Pascal hoặc Free Pascal để lập trình giải các bài toán sau:
Bài 1: (4, 0 điểm) Tính tổng BAI1.PAS
Viết chương trình nhập từ bàn phím số tự nhiên n sao cho 5
Bài 2: (4,0 điểm) Xử lý xâu BAI2.PAS
Trong kỳ thi học sinh giỏi lớp 9, do sơ xuất khi nhập dữ liệu nên dữ liệu về họ và tên của thí sinh không đúng theo quy cách của văn bản, vì vậy rất khó khăn trong việc tìm kiếm thông tin thí sinh. Để khắc phục tình trạng đó, ban tổ chức yêu cầu bộ phận thư ký chỉnh sửa lại dữ liệu đúng chuẩn. Em hãy giúp bộ phận thư ký lập trình thực hiện công việc với yêu cầu như sau: Nếu có nhiều kí tự trắng ở trong xâu thì xóa và chỉ để lại một kí tự trắng ở giữa mỗi từ, kí tự đầu tiên của họ, họ lót, tên được chuyển thành chữ in hoa, tất cả các kí tự còn lại được chuyển thành chữ thường.
Dữ liệu vào: Cho bởi file text XAU.INP trong đó gồm một dòng chứa xâu dài không quá 255 kí tự, là họ và tên thí sinh.
Kết quả ra: Ghi ra file text XAU.OUT gồm một dòng chứa kết quả xâu đã xử lý.
Ví dụ:
XAU.INP | XAU.OUT |
NguYEn THI ThuY nhung | Nguyen Thi Thuy Nhung |
Bài 3: (6,0 điểm) Phần thưởng BAI3.PAS
Trong cuộc thi học sinh giỏi văn hóa cấp Huyện môn Tin học mỗi học sinh đều có số điểm tích lũy riêng của mình. Số điểm tích lũy của mỗi học sinh là một số nguyên dương K (0 < K ≤ 2´109). Đội tuyển của phòng giáo dục và đào tạo Huyện Cam Lộ có N học sinh tham gia dự thi (2 ≤ N ≤ 100). Tại buổi gặp mặt trước kỳ thi cấp tỉnh, thầy trưởng phòng giáo dục quyết định thưởng cho các học sinh trong đội tuyển Q triệu đồng, biết rằng điểm tích lũy của mỗi học sinh đều chia hết cho Q.
Yêu cầu: Hãy tìm số nguyên dương Q lớn nhất.
Dữ liệu vào: Số nguyên dương N là số lượng học sinh được nhập từ bàn phím.
Nhập lần lượt điểm tích lũy của N học sinh, các số được ghi cách nhau ít nhất một dấu cách.
Dữ liệu ra: Ghi số nguyên dương Q tìm được.
Ví dụ:
PT.INP | PT.OUT |
5 15 24 45 36 27 | 3 |
Bài 4: ( 6 điểm) Sinh xâu ký tự BAI4.PAS
Cho hai xâu X, Y gồm các ký tự số từ 0 đến 9 được biểu diễn như sau:
X=x1, x2, x3…xn; Y= y1, y2,y3…ym (n,m<250). Hãy viết chương trình sinh ra xâu ST thỏa mãn các điều kiện sau :
- ST gồm các ký tự số vừa có mặt ở xâu X, vừa có mặt ở xâu Y.
- Các ký tự số trong xâu ST chỉ xuất hiện duy nhất một lần
- Xâu ST nếu đổi ra số sẽ nhận được một số đạt giá trị lớn nhất
Dữ liệu vào : Cho bởi file text SINHXAU.INP chứa xâu X và xâu Y, mỗi xâu nằm trên một dòng
Kết quả : Ghi ra màn hình là số lớn nhất nhận được.
SINHXAU.INP | SINHXAU.OUT |
X= “19012304” Y= “034012” | 43210 |
X= “2468” Y= “3579” | Khong co |
Yêu cầu: - Các tệp bài làm được lưu theo tên bài. Ví dụ: BAI1.PAS.
- Tất cả các tệp đều được lưu trong thư mục theo đường dẫn: D:\SBD*. (* là số báo danh của thí sinh). Ví dụ: Thí sinh có SBD là 03 thì lưu theo đường dẫn D:\SBD03.