CÁCBÀITẬPPASCALHAYDÀNHCHO HS LỚP9BÀI 1 : XẾP GẠCH. Minh rất thích trò chơi xếp các chiếc hộp có hình viên gạch. Minh đặt các viên gạch chồng lên nhau và xây thành nhiều chồng có độ cao khác nhau. Minh khoe với chị rằng “Chị trơng, em đã xây được một bức tường”. Chị của Minh trả lời “Em phải xếp các viên gạch có độ cao giống nhau mới được gọi là một bức tường”. Sau khi nghe chị nói như vậy nó cân nhắc một tí và cho rằng ý kiến ấy là đúng. Vì vậy em bắt đầu tiến hành sắp xếp lại các chồng gạch lần lượt từng chiếc một cho đến khi hồn thành cơng việc. Khi cơng việc đã hồn tất, Minh mệt lả và muốn có bạn nào giúp Minh di chuyển các viên gạch với số lần ít nhất. Các chiếc hộp trước và sau khi xếp u cầu: Hãy lập trình đưa ra số lần di chuyển ít nhất của các viên gạch sao cho từ các chồng gạch có độ cao khác nhau trở thành các chồng gạch có độ cao bằng nhau; lần lượt từng chiếc một cho đến khi hồn thành cơng việc. Dữ liệu vào: có cấu trúc sau: - dòng đầu tiên là số n, n là số các chồng gạch, - dòng tiếp theo lần lượt là các h i , độ cao của chồng gạch thứ i. (1≤ n ≤ 50; 1≤ h i ≤ 100; i = 1 n). Lưu ý rằng số viên gạch bao giờ cũng chia hết cho số chồng gạch. Dữ liệu ra: chỉ có một dòng chứa một số ngun dương là kết quả tính tốn số lần ít nhất sau khi xếp lại các chồng gạch. Nếu khơng có kết quả cũng phải ghi rõ “KHONG CAN DI CHUYEN LAN NAO” Ví dụ: với hình trên ta có dữ liệu vào, ra: Input Output 6 5 2 4 1 7 5 5 7 9 999999 Khong can di chuyen lan nao Gv: Tr ầ n Minh Th ọ 1/5 BÀI 2: SẮP SỐ TRONG XÂU 1. Nhập một xâu s bao gồm số và kí tự, in ra xâu đã sắp xếp số theo thứ tự tăng dần còn vò trí các kí tự vẫn giữ nguyên? Input Output abc6ghj7kkkkk1hhhh9 abc6ghj7kkkkk1hhhh9 BÀI 3: KÝ TỰ NHIỀU NHẤT Nhập vào xâu s (az), in ra ký tự xuất hiện nhiều lần nhất trong xâu và số lần xuất hiện? Nếu có nhiều trường hợp thì in ra trường hợp đầu tiên. ví dụ: Input Output abcaabca a 4 bcbsaaba b 3 BÀI 4: TỪ DÀI NHẤT In ra từ dài nhất trong một xâu nhập từ bàn phím và số ký tự của từ này? Nếu có nhiều từ có độ dài bằng nhau thì in ra hết. ví dụ: Input Output Nguyen van truong truong 4 Truong thich hocpascal Truong pascal 5 BÀI 5: DÃY CON LỚN NHẤT Cho một mảng số ngun gồm n phần tử. Tìm dãy con gồm m phần tử (m≤n) sao cho dãy con này có tổng lớn nhất. (Dãy con là dãy các phần tử liên tiếp nhau trong mảng). nhập n, nhập các phần tử của dãy, nhập m, in ra dãy con có m phần tử. Input Output 8 4 3 5 2 8 7 9 6 3 8 7 9BÀI 6: XOÁ KÝ TỰ TRÙNG Viết chương trình nhập vào 1 xâu và xoá hết các ký tự liên tiếp giống nhau trong xâu chỉ chừa lại một? Input Output cccccaaannnnooo cano yeseeeyysss yeseys Gv: Tr ầ n Minh Th ọ 2/5 BÀI 7: SỐ ĐƠN ĐIỆU Các số nguyên dương 3748, 58, 859, 32435465768 được gọi là các số đơn điệu do nếu quan sát các chữ số của số này , ta thấy chúng luân phiên tăng giảm hoặc giảm tăng. Chẳng hạn: 3 < 7 > 4 < 8 và 3 > 2 < 4 > 3 < 5 > 4 < 6 > 5 < 7 > 6 < 8 Số chỉ có một chữ số là số đơn điệu chiều dài 1. Hãy viết chương trình xác đònh số chữ số đầu tiên lớn nhất tạo thành số đơn điệu của một số cho trước. Nhập vào một số nguyên dương không quá 75 chữ số. Xuất ra số chữ số đầu tiên lớn nhất tạo thành số đơn điệu. Input Output 37486398 5 859672534163 12 BÀI 8: SỐ NGUYÊN TỐ GHÉP Xét dãy A các số ngun tố 2, 3, 5, 7, 11, 13, 17, 19, và dãy B gồm các số thu được từ dãy A bằng cách ghép hai số liên tiếp trong A: 23, 57, 1113, 1719, Trong dãy B có những phần tử là số ngun tố. Chẳng hạn 23, 3137, 8389, 157163 Các số ngun tố trong dãy B gọi là số ngun tố ghép. u cầu: Cho trước số ngun dương K ≤ 500, hãy tìm số ngun tố ghép thứ K. Input Output 2 3137 BÀI 9: TỔNG 2 SỐ NGUYÊN TỐ Trong mt bc th mà Christian Goldbach gi cho Euler, ơng ã cp n phng ốn ca mình: Mi s t nhiên chn ln hn 2 u là tng ca 2 s ngun t. Hãy lp ch ng trình kim chng phng ốn ca Goldbach. u cu: - D liu vào t file GB.INP gm nhiu dòng, dòng u là s test (<10), các dòng tip theo mi dòng ghi 1 s t nhiên chn ln hn 2 (<32000) - D liu ra là file GB.OUT gm các dòng (mi dòng ng vi 1 test) - mi dòng gm 2 s ngun t cách nhau ít nht 1 du cách có tng bng s ã cho (hoc khơng tìm c – ghi là “khong”). Input Output 3 8 12 5 3 5 5 7 2 3 Gv: Tr ầ n Minh Th ọ 3/5 BAØI 10: ÑÒNH LYÙ 6174 Dãy 6174 được tạo theo cách sau. Số hạng đầu tiên của dãy là số nguyên dương n1 gồm bốn chữ số (bốn chữ số của số hạng đầu tiên này không đồng thời bằng nhau). Hai số mới (a 1 và b 1 ) được tạo thành từ số đầu tiên của dãy. Số thứ nhất a1 có được bằng cách sắp xếp các chữ số của n1 theo thứ tự giảm dần và số thứ nhì b1 có được bằng cách sắp xếp các chữ số của n1 theo thứ tự tăng dần. Số thứ nhì n 2 của dãy là hiệu a 1 - b 1 . Tiếp tục, hai số a 2 và b 2 được tạo thành từ n 2 tương tự như a 1 và b 1 và số thứ ba n3 của dãy 6174 là hiệu a 2 - b 2 , và cứ thế tiếp tục. Dãy số kết thúc khi các số hạng của dãy bắt đầu lặp lại (nghĩa là các phần tử của dãy đôi một khác nhau). Chữ số 0 ở đầu số (vị trí thứ nhất tính từ bên trái) vẫn có nghĩa. Định lý 6174 phát biểu rằng số hạng cuối của dãy số xây dựng như trên luôn là số 6174. Chẳng hạn, xét dãy mà số hạng đầu tiên (n1) là 7815. Ta có: 8751 - 1578 = 7173 (n 2 ) 7731 - 1377 = 6358 (n 3 ) 6543 - 3456 = 3087 (n4 ) 8730 - 0378 = 8352 (n5 ) 8532 - 2358 = 6174 (n6 ) Bài toán: Cho trước số hạng đầu tiên của dãy 6174. Cho biết chỉ số của số hạng cuối (là số hạng 6174) của dãy. Dữ liệu: Cho trong tập tin văn bản DL6174.INP, gồm một dòng gồm số nguyên dương duy nhất là số hạng đầu tiên của dãy số 6174. Kết quả: Cho trong tập tin văn bản DL6174.OUT, gồm một dòng gồm số nguyên dương duy nhất là số hiệu của số hạng cuối của dãy số 6174 mà số hạng đầu cho trong tập tin dữ liệu. Ví dụ: DL6174.INP DL6174.OUT 7815 6 Gv: Tr ầ n Minh Th ọ 4/5 BÀI 11: DIỆN TÍCH CÁC HÌNH Cho hình chữ nhật ABCD có chiều dài AB là a (cm), chiều rộng AD là b (cm) với a, b là các số ngun dương khơng vượt q 10000. Một điểm M trên đoạn BC, một điểm N trên đoạn CD sao cho độ dài (tính bằng cm) các đoạn BM, CN bằng nhau và là số ngun khơng âm. u cầu: 1. Biết độ dài BM, tính diện tích hình chữ nhật ABCD và diện tích tam giác MCN. 2.Tìm giá trị lớn nhất và giá trị nhỏ nhất của diện tích tam giác AMN khi M, N thay đổi. Dữ liệu vào: Dữ liệu của bài tốn cho trong tệp tin DIENTICH.INP gồm ba số a, b, x (x ≤ b ≤ a, x là độ dài BM trong u cầu 1) được ghi trên cùng một dòng theo đúng thứ tự trên, hai số liên tiếp cách nhau một khoảng trắng. Dữ liệu ra: Kết quả ghi ra màn hình (hoặc ghi ra file DIENTICH.OUT) trên 5 dòng: - Dòng đầu là ba số a, b và x. - Dòng thứ hai là diện tích hình chữ nhật ABCD. - Dòng thứ ba là diện tích tam giác MCN - Dòng thứ tư là giá trị lớn nhất của diện tích tam giác AMN - Dòng thứ năm là giá trị nhỏ nhất của diện tích tam giác AMN (Các giá trị diện tích được ghi trong dạng thập phân với 1 chữ số sau dấu phẩy). Ví dụ: DIENTICH.INP Kết quả trên màn hình (hoặc file DIENTICH.OUT) 10 6 2 10 6 2 60.0 4.0 30.0 17.5 Hạn chế kỹ thuật: - Ghi tên file bài làm là DIENTICH.PAS. - Dữ liệu vào là chính xác khơng cần kiểm tra. - Nếu khơng nhập được dữ liệu vào từ file, thí sinh có thể nhập dữ liệu vào từ bàn phím - Có khoảng 60% số bộ test có a < 100. BÀI 12: ĐỌC SỐ LA MÃ Viết chương trình nhập vào 1 số la mã rồi biến đổi thành số thập phân. Input Output DCLXVI 666 mmCcXx 2220 MMcmxLIV 2944 mmmcmxcix 3999 Giới hạn: Số La mã nhập vào là chính xác. Số thập phân nhỏ hơn 4000. Gv: Tr ầ n Minh Th ọ 5/5 A B D C M N . CÁC BÀI TẬP PASCAL HAY DÀNH CHO HS LỚP 9 BÀI 1 : XẾP GẠCH. Minh rất thích trò chơi xếp các chiếc hộp có hình viên gạch. Minh đặt các viên gạch chồng lên nhau và. khi xếp lại các chồng gạch. Nếu khơng có kết quả cũng phải ghi rõ “KHONG CAN DI CHUYEN LAN NAO” Ví dụ: với hình trên ta có dữ liệu vào, ra: Input Output 6 5 2 4 1 7 5 5 7 9 9 9 9 9 9 9 Khong can. thich hoc pascal Truong pascal 5 BÀI 5: DÃY CON LỚN NHẤT Cho một mảng số ngun gồm n phần tử. Tìm dãy con gồm m phần tử (m≤n) sao cho dãy con này có tổng lớn nhất. (Dãy con là dãy các phần tử