Đề thi chọn học sinh giỏi cấp tỉnh năm 2008 môn: tin học lớp: 12
Bài 1. Xâu kí tự
Lập chương trình nhập một xâu bất kỳ từ bàn phím. Đếm xem trong xâu có bao nhiêu kí tự bằng chữ số, bao nhiêu kí tự bằng chữ, bao nhiêu kí tự khác nhau. In các kết quả ra màn hình.
SỞ GIÁO DỤC VÀ ĐÀO TẠO TUYÊN QUANG ĐỀ CHÍNH THỨC ĐỀ THI CHỌN HỌC SINH GIỎI CẤP TỈNH NĂM 2008 Môn: Tin học Lớp: 12 Thời gian: 180 phút (Không kể giao đề) Đề thi có 03 trang Tổng quan đề thi: Tên bài Xâu kí tự Lưới ô vuông Dấu các phép tính Số hoàn hảo File bài làm Bai1.pas Bai2.pas Bai3.pas Bai4.pas Dữ liệu vào Bàn phím Bàn phím B3in.txt B4in.txt Dữ liệu ra Màn hình Màn hình B3out.txt B4out.txt Điểm 5 5 5 5 Chú ý: 1. Bài thi được làm trên ngôn ngữ lập trình Pascal. 2. Chương trình của Bài 1, Bài 2, Bài 3, Bài 4 phải ghi lên đĩa với tên tương ứng là Bai1.pas, Bai2. pas, Bai3. pas, Bai4. pas trong thư mục D đặt tên SBD của mình ví dụ: D:\SBD01\Bai1. pas Bài 1. Xâu kí tự Lập chương trình nhập một xâu bất kỳ từ bàn phím. Đếm xem trong xâu có bao nhiêu kí tự bằng chữ số, bao nhiêu kí tự bằng chữ, bao nhiêu kí tự khác nhau. In các kết quả ra màn hình. Bài 2. Lưới ô vuông Cho một lưới gồm n ô vuông được đánh dấu thứ tự từ 1 đến n. Ban đầu mỗi ô vuông không chứa hòn sỏi nào, người ta bỏ vào các ô vuông những hòn sỏi k lần theo qui tắc sau: Mỗi lần bỏ thêm vào ô vuông thứ nhất, ô vuông thứ hai mỗi ô đúng 1 hòn sỏi; từ ô vuông thứ ba trở đi số hòn sỏi bỏ thêm vào bẳng tổng số hòn sỏi của các ô vuông phía trước. Yêu cầu: Nhập vào số tự nhiên n, k, m (m ≤ n) trong đó n là số ô vuông của lưới, k là số lần thực hiện qui tắc. Hãy cho biết ô vuông thứ m có bao nhiêu hòn sỏi? Ví dụ: Có n = 5, k = 3, m= 4. Thực hiện k lần theo qui tắc trên ta có k=1 1 1 2 4 8 k=2 2 2 6 14 32 k=3 3 3 12 32 82 Với k=1 số hòn sỏi của từng ô vuông như trên; Với k=2 số hòn sỏi của từng ô vuông như trên; Với k=3 số hòn sỏi của từng ô vuông như trên; Ta được ô vuông thứ m=4 có số hòn sỏi là 32. Bài 3. Dấu các phép tính Cho biểu thức sau: ((((a1 ? a2) ? a3) ? a4) ? a5) ? a6 = n Viết chương trình tìm tất cả các cách thay thế các dấu ? bởi các phép tính +, -, *, / để thoả mãn biểu thức trên. Với n bất kỳ nhập từ bàn phím. Dữ liệu vào: Vào từ File văn bản B3in.txt có cấu trúc như sau: - Dòng đầu tiên ghi giá trị n - Dòng thứ hai ghi các số a1, a2, a3, a4, a5, a6 Dữ liệu ra: Ghi ra file văn bản B3out.txt các cách thay thế các dấu ? bởi các phép tính +, -, *, / để thoả mãn biểu thức trên. Ví dụ: B3in.txt B3out.txt 1.25 18 6 6 3 3 4 Thay dau ? boi cac dau +,-,*,/. De thoa man ((((18.00?6.00)?6.00)?3.00)?3.00)?4.00=1.25 Cac phep toan thoa man la: (((18.00+6.00)-6.00)-3.00)/3.00)/4.00)=1.25 (((18.00-6.00)+6.00)-3.00)/3.00)/4.00)=1.25 (((18.00-6.00)-6.00)/3.00)+3.00)/4.00)=1.25 (((18.00*6.00)/6.00)-3.00)/3.00)/4.00)=1.25 (((18.00/6.00)*6.00)-3.00)/3.00)/4.00)=1.25 Bài 4. Số hoàn hảo: Số nguyên dương n được gọi là số hoàn hảo nếu nó bằng tổng các ước dương của nó (trừ chính nó). Chẳng hạn: 6 =3+2+1 nên 6 là số hoàn hảo. Yêu cầu: Nhập vào số n. Hãy đếm và in ra tất cả các số hoàn hảo từ 1 đến n. Với mỗi số hoàn hảo, hãy viết nó dưới dạng tổng các ước thực sự của nó. Dữ liệu vào: Vào từ file văn bản B4in.txt chứa giá trị của n (n<=10000) Dữ liệu ra: Ghi ra file văn bản B4out.txt có cấu trúc như sau: - Dòng đầu tiên ghi tất cả các số hoàn hảo từ 1 đến n. - Tiếp đến là các dòng, mỗi dòng ghi một số hoàn hảo được viết dưới dạng tổng các ước thực sự của nó. Ví dụ: B4in.txt B4out.txt 10000 Co 4 so hoan hao trong khoang [1..10000] la: 6, 28, 496, 8128 6 = 1+2+3 28 = 1+2+4+7+14 496 = 1+2+4+8+16+31+62+124+248 8128 = 1+2+4+8+16+32+64+127+254+508+1016+2032+4064 Cán bộ coi thi không giải thích gì thêm. ----------------HẾT----------------- SỞ GIÁO DỤC VÀ ĐÀO TẠO TUYÊN QUANG ĐÁP ÁN ĐỀ THI CHỌN HỌC SINH GIỎI CẤP TỈNH NĂM 2008 Môn: Tin học Lớp: 12 Cách chấm điểm: Dùng các bộ test để chấm trực tiếp trên máy: Với các bộ test sau: Bài InPut OutPut Điểm Bài 1: 5 AaBb 1212 xyz So ki tu bang chu so: 4 So ki tu bang chu: 7 So ki tu khac nhau: 10 2 lthoa.gv08@tuyenquang.edu.vn So ki tu bang chu so: 2 So ki tu bang chu: 22 So ki tu khac nhau: 17 2 *#06# So ki tu bang chu so: 2 So ki tu bang chu: 0 So ki tu khac nhau: 4 1 Bài 2: 5 n=5; k=1; m=4 So hon soi la: 4 2 n=5; k=2; m=5 So hon soi la: 32 2 n=5; k= 3; m=4 So hon soi la: 32 1 Bài 3: 5 1.25 18 6 6 3 3 4 Thay dau ? boi cac dau +,-,*,/. De thoa man ((((18.00?6.00)?6.00)?3.00)?3.00)?4.00=1.25 Cac phep toan thoa man la: (((18.00+6.00)-6.00)-3.00)/3.00)/4.00)=1.25 (((18.00-6.00)+6.00)-3.00)/3.00)/4.00)=1.25 (((18.00-6.00)-6.00)/3.00)+3.00)/4.00)=1.25 (((18.00*6.00)/6.00)-3.00)/3.00)/4.00)=1.25 (((18.00/6.00)*6.00)-3.00)/3.00)/4.00)=1.25 2 6 30 100 100 1 10 2 Thay dau ? boi cac dau +,-,*,/. De thoa man ((((30.00?100.00)?100.00)?1.00)?10.00)?2.00=6.00 Cac phep toan thoa man la: (((30.00+100.00)-100.00)*1.00)/10.00)*2.00)=6.00 (((30.00+100.00)-100.00)/1.00)/10.00)*2.00)=6.00 (((30.00-100.00)+100.00)*1.00)/10.00)*2.00)=6.00 (((30.00-100.00)+100.00)/1.00)/10.00)*2.00)=6.00 (((30.00*100.00)/100.00)*1.00)/10.00)*2.00)=6.00 (((30.00*100.00)/100.00)/1.00)/10.00)*2.00)=6.00 2 0 130 100 20 12 30 15 Thay dau ? boi cac dau +,-,*,/. De thoa man ((((130.00?100.00)?20.00)?12.00)?30.00)?15.00=0.00 Cac phep toan thoa man la: (((130.00+100.00)/20.00)-12.00)*30.00)+15.00)=0.00 1 Bài 4: 5 5 Khong co so hoan hao nao trong khoang [1..5] 2 100 Co 2 so hoan hao trong khoang [1..100] la: 6, 28 6 = 1+2+3 28 = 1+2+4+7+14 2 10000 Co 4 so hoan hao trong khoang [1..10000] la: 6, 28, 496, 8128 6 = 1+2+3 28 = 1+2+4+7+14 496 = 1+2+4+8+16+31+62+124+248 8128 = 1+2+4+8+16+32+64+127+254+508+1016+2032+4064 1
File đính kèm:
- De thi, Dap an Tin hoc.doc