Tải bản đầy đủ (.doc) (5 trang)

BÀI TẬP TỰ LUYỆN LẬP TRÌNH PASCAL

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (112.08 KB, 5 trang )

TỰ LUYỆN CÁC BÀI TẬP PASCAL
Bài 1,In ra màn hình hình sau
Rộng là N, chiều cao là H
******
******
******
******
******
******
******
Bài 2, In
*
***
*****
*******
********
*********
***********
Bài 3, In bảng cửu chương
Bài 4,Khai báo , nhập mảng hai chiều và in ra màn hình <mảng bất kì>
Bài 5:
Cho ma trận vuông A có kích thứơc n x n phần tử. Lập trình thực hiện các công việc sau:
Câu 1: Nhập các phần tử cho ma trận vuông A.
Câu 2: In các phần tử trên đường chéo chính và các phần tử nằm trên các đường song song với
đường chéo chính.
Câu 3: Kiểm tra xem đó có phải là ma trận La tinh không. (Ma trận La tinh là ma trận là ma trận
mà mỗi hàng và mỗi cột đều chứa đủ các số từ 1 đến n)
Ví dụ:
Cho ma trận A như sau:
1 2 3 4
2 3 4 1


3 4 1 2
4 1 2 3
Kết quả khi thực hiện chương trình:
Câu 1: Đường chéo chính....
1 3 1 3
Câu 2: Các đường song song với đường chéo chính....
2 4 2
2 4 2
3 1
3 1
Câu 3: Đây là ma trận La tinh.


Bài 6. Cho một dãy A gồm N số nguyên dương A[1], A[2],...,A[N] (N>=2). Với N nhập từ bàn phím và
các giá trị A[1], A[2],...,A[N] có thể nhập từ bàn phím hoặc được gán ngẫu nhiên từ chương trình.
Hãy cắt dãy A thành hai đoạn (mỗi đoạn là một dãy con) sao cho tổng giá trị ở hai đoạn bằng
nhau.
Thí dụ:
 với N=2 và A[1]=2, A[2]=5 thì kết quả cắt dãy là: không cắt được.
 với N=3 và A[1]=5, A[2]=4, A[3]=1 thì kết quả cắt dãy là: 5 = 4+1.
 với N=4 và A[1]=1, A[2]=3, A[3]=2, A[4]=2 thì kết quả cắt dãy là: 1+3 = 2+2.
Bài 7. Cho một cái bánh trên bánh có N qua dâu
Làm sao chia chiếc bánh đó là 3 phần với số quả dâu trên 3 phần bằng nhau
Bài 8*. Một người mua hàng mua một hàng có giá trị N đồng và trả cho người bán hàng M tiền (M>N)
người bán hàng có a đồng 1000 b đồng 2000 c đồng 5000 d đồng 10.000 hỏi có bao nhiêu cách để người
bán hàng trả lại tiền cho người mua hàng.
Bài 9, Nhập vào một mảng N phần tử
Xắp xếp lại mảng từ bé đến lớn(yêu cầu viết thủ tục nhập, thủ tục in)
Bài 10,Cho một số tự nhiêm D (1000Tìm tất cả các số là số nguyên tố, số chính phương, số hoàn hảo trong khoảng từ 1 đên D

(Số hoàn hảo là số có tổng các ước <không tính số đó> bằng chính nó.
VD: 6 là số hoàn hảo vì 6=1+2+3. ).
Bài 11:

Viết chương trình dịch các ngày trong tuần sang tiếng anh
2
3
4
5
6
7
8
Monday Tuesday Wednesday Thursday Friday Saturday Sunday

Bài 12:
Viết chương trình cho phép tính tổng của nhiều số (Chưa biết bao nhiêu số). Nhập số 0 để kết
thúc quá trình nhập.
Bài 13:
Viết chương trình tìm ước chung lớn nhất (UCLN) của hai số với yêu cầu sử dụng thuật toán Euclid.
Thuật toán Euclid: Nếu a chia hết cho b (a chia b dư 0) thì UCLN(a,b) bằng b
Nếu a chia b dư r thì UCLN(a,b) = UCLN(b,r)
Bài 14:
Viết chương trình cho phép thực hiện rút gọn phân số.
Bài 15:
Viết chương trình cho phép trộn hai dãy số A và B cùng có số phần tử là k để được dãy số C theo
yêu cầu sau:
A = a1, a2 ... ak
B = b1, b2 ... bk
Được C = a1, b1, a2, b2 ... ak, bk.



Bài 16: (Tin học trẻ toàn quốc lần I - 1995)
Hai số tự nhiên A, B được coi là hữu nghị nếu như số này bằng tổng các ước số của số kia và
ngược lại. Lập trình tìm và chiếu lên màn hình các cặp số hữu nghị trong phạm vi từ 1 đến 10000. (Lưu
ý: số 1 được coi là ước số của mọi số còn mỗi số không được coi là ước số của chính nó).
Bài 17: Viết chương trình nhập một xâu từ bàn phím. In ra xâu đó sau khi xóa hết các ký tự trắng thừa
trong xâu, đổi các ký tự đầu câu thành viết hoa các ký tự còn lại viết .
Bài 18: Viết chương trình nhập vào một xâu ký tự từ bàn phím. Tìm xâu đảo ngược của xâu đó rồi in kết
quả ra màn hình.
Bài 19: Tính tổng sau:
S= 1/2+1/4+1/6+1/8+1/10 + + 1/N ( N nhập vào từ bàn phím có kiểm tra).
Bài 20:

Viết chương trình tính n!

Bài 21: Số nguyên tố tương đương
Hai số tự nhiên được gọi là Nguyên tố tương đương nếu chúng có chung các ước số nguyên tố. Ví
dụ các số 75 và 15 là nguyên tố tương đương vì cùng có các ước nguyên tố là 3 và 5. Cho trước hai số
tự nhiên N, M. Hãy viết chương trình kiểm tra xem các số này có là nguyên tố tương đương với nhau
hay không.
Bài 22: Số siêu nguyên tố.
Số siêu nguyên tố là số nguyên tố mà khi bỏ một số tùy ý các chữ số bên phải của nó thì phần còn
lại vẫn tạo thành một số nguyên tố.
Ví dụ: 7331 là một số siêu nguyên tố có 4 chữ số vì 733, 73, 7 cũng là các số nguyên tố.
Hãy viết chương trình nhập dữ liệu vào là một số nguyên (0 < N <10) và đưa ra kết quả là các số
siêu nguyên tố có N chữ số cùng số lượng của chúng.
Ví dụ khi chạy chương trình:
Nhap so N: 4 ↵
Cac so sieu nguyen to co 4 chu so la:
2333 2339 2393 2399 2939 3119 3137 3733 3739 3793 3797

5939 7193 7331 7333 7393
Tat ca co 16 so.
Bài 23: Lưới ô vuông vô hạn.
Cho lưới ô vuông vô hạn về hai phía (trên và phải). Các ô của lưới được đánh số theo quy tắc sau:
- Ô trái dưới – Vị trí (0,0) được đánh số 0.
- Các ô còn lại được đánh số theo nguyên tắc lan tỏa từ vị trí (0,0) và theo quy tắc: tại một vị trí
số được điền vào là số nguyên không âm nhỏ nhất chưa được điền trên hàng và cột chứa ô
hiện thời. Ví dụ, ta có hình dạng một số ô của lưới như sau:
3
2
1

2
3
0

1
0
3

0
1
2


0

1

2


3

Cho trước cặp số tự nhiên M, N – kích thước ô lưới. Hãy viết chương trình mô tả lưới trên, kết
quả được ghi vào file KQ.TXT.
Bài 24- Xây dựng số
Cho các số sau: 1, 2, 3, 5, 7
Chỉ dùng phép toán cộng hãy dùng dãy trên để tạo ra số: 43, 52.
Ví dụ để tạo số 130 bạn có thể làm như sau: 123 + 7 = 130.
Bài 25- Phần tử yên ngựa
Cho bảng A kích thước MxN. Phần tử Aij được gọi là phần tử yên ngựa nếu nó là phần tử nhỏ nhất
trong hàng của nó đồng thời là phần tử lớn nhất trong cột của nó. Ví dụ trong bảng số sau đây:
15
3
9
55
4
6
76
1
2
thì phần tử A22 chính là phần tử yên ngựa.
Bạn hãy lập chương trình nhập từ bàn phím một bảng số kích thước MxN và kiểm tra xem nó có phần tử
yên ngựa hay không?
Bài 26- Mã hoá văn bản
Bài toán sau mô tả một thuật toán mã hoá đơn giản (để tiện ta lấy ví dụ tiếng Anh, các bạn có thể mở
rộng cho tiếng Việt):
Tập hợp các chữ cái tiếng Anh bao gồm 26 chữ cái được đánh sô thứ tự từ 0 đến 25 như sau:
0 1 2 3 4 5 6 7 8 9 1
0

a b c d e f g h i j k

11 12 13 14 15 16 17 1
8
l m n o p q r s

Quy tắc mã hoá một ký tự như sau (lấy ví dụ ký tự X):
- Tìm số thứ tự tương ứng của ký tự ta được 23
- Tăng giá trị số này lên 5 ta được 28
- Tìm số dư trong phép chia số này cho 26 ta được 2
- Tra ngược bảng chữ cái ta thu được C.
a. Sử dụng quy tắc trên để mã hoá các dòng chữ sau:
PEACE
HEAL THE WORLD
I LOVE SPRING
b. Hãy tìm ra quy tắc giải mã các dòng chữ sau:
N FR F XYZIJSY
NSKTVRFYNHX

19 2
0
t u

21 22 23 24 25
v

w

x


y

Z


MFSTN SFYNTSFQ ZSNBJVXNYD
Bài 27- Trò chơi Tích - Tắc vuông
Trên một lưới kẻ ô vuông có 2 người chơi như sau: người thứ nhất mỗi lần chơi sẽ đánh dấu x vào 1 ô
trống. Người thứ hai được đánh dấu 0 vào 1 ô trống. Người thứ nhất muốn đạt được mục đích là đánh
được 4 dấu x tạo thành 4 đỉnh của 1 hình vuông. Người thứ hai có nhiệm vụ ngăn cản mục đích đó của
người thứ nhất.
Lập chương trình tìm thuật toán tối ưu cho người thứ nhất (người thứ nhất có thể luôn thắng).
Chú ý: Lưới ô vuông được coi là vô hạn về cả hai phía.
_THG-sưu tầm_
_______________________Chúc các bạn học tốt !_______________________



×