Bài tập pascal rất hay
Chia sẻ bởi Trần Đình Hải |
Ngày 16/10/2018 |
33
Chia sẻ tài liệu: Bài tập pascal rất hay thuộc Tin học 9
Nội dung tài liệu:
Bài tập 1: Viết chương trình nhập vào số tự nhiên N (N lẻ), sau đó điền các số từ 1 đến n2 vào trong một bảng vuông sao cho tổng các hàng ngang, hàng dọc và 2 đường chéo đều bằng nhau (bảng này được gọi là Ma phương).
Ví dụ: Với N=3 và N=5 ta có
Bắc
2
7
6
3
16
9
22
15
9
5
1
20
8
21
14
2
4
3
8
Tây
7
25
13
1
19
Đông
24
12
5
18
6
11
4
17
10
23
Nam
Phuơng pháp:
Xuất phát từ ô bên phải của ô nằm giữa. Đi theo hướng đông bắc để điền các số 1, 2, ...
Khi điền số, cần chú ý một số nguyên tắc sau:
- Nếu vượt ra phía ngoài bên phải của bảng thì quay trở lại cột đầu tiên.
- Nếu vượt ra phía ngoài bên trên của bảng thì quay trở lại dòng cuối cùng.
- Nếu số đã điền k chia hết cho N thì số tiếp theo sẽ được viết trên cùng một hàng với k nhưng cách 1 ô về phía bên phải.
Bài tập 2: Viết chương trình in ra màn hình tam giác Pascal. Ví dụ, với n=4 sẽ in ra hình sau:
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
Ý tưởng:
Tam giác Pascal được tạo ra theo qui luật sau:
+ Mỗi dòng đều bắt đầu và kết thúc bởi số 1.
+ Phần tử thứ j ở dòng k nhận được bằng cách cộng 2 phần tử thứ j-1 và j ở dòng
Bài tập 3: Viết chương trình nhập vào 2 dãy số nguyên (a)n và (b)m, m(n. Kiểm tra xem dãy {b} có phải là dãy con của dãy {a} không?
Bài tập 4: Viết chương trình nhập vào một dãy số nguyên a1, a2, ..., an. Tìm trong dãy {a} một dãy con tăng dần dài nhất (có số phần tử lớn nhất) và in ra màn hình dãy con đó.
Bài tập 5: Cho mảng 2 chiều A cấp mxn. Viết chương trình sắp xếp lại mảng A theo yêu cầu sau:
a/ Các phần tử trên mỗi dòng được sắp xếp theo thứ tự giảm dần.
b/ Các dòng được sắp xếp lại theo thứ tự tăng dần của tổng các phần tử trên mỗi dòng.
Bài 6: Tìm điểm cực tiểu của mảng hai chiều
Một phần tử được gọi là điểm cực tiểu của mảng 2 chiều A[m.n] nếu nó không lứon hơn các phần tử kề nó
Bài 7: Tìm " Phần tử yên ngựa" cuả mảng hai chiều
Phần tử A[i,j] được gọi là "yên ngựa" của mảng hai chiều nếu nó đồng thời là phần tử nhỏ nhất của dòng i và là phần tử lớn nhất của cột j, hoăck A[i,j] phải là phần tử lớn nhất cảu dòng i và là phần tử nhỏ nhất của cột j
Bài 8: Cho ma trận các số nguyên A[m,n], hãy sắp xếp lại ma trận sao cho các phần tử của chúng có giá trị tăng dần theo đường xoắn óc từ ngoài vào trong như hình vẽ sau:
Bài 9: Tìm tất cả các phần tử A[i,j]>0 nằm giữa các phần tử <=0 trong một ma trận vuông A[n,n]
Bài 10: Tìm các phần tử cảu một ma trận vuông là MIN hoặc MAX của các phần tử nằm trên 2 đường chéo chính
Bài 11: Viết chương trình sắp xếp các phần tử của ma trận vuông A[n,n] sao cho các phần tử của nó tăng dần khi đi theo đường zigzag như hình vẽ
Bài tập 11: Viết chương trình để nén và giải nén một xâu ký tự .
Ví dụ: Xâu ‘AAAABBBCDDDDDDDEEF’ sau khi nén sẽ trở thành ‘4A3BC7D2EF’.
Bài 12: CHo mảng số thực vuông kích thước 2n x 2n. Hãy lập các mảng mới bằng cách đổi chổ cho khối ô vuông kích thước n x n của mảng A theo cách sau:
Bài 13 : Để mã hóa một văn bản gồm toàn chữ cái tiếng anh người ta có thể làm như sau: Xếp bảng chữ cái theo vòng tròn, sau đó thay mỗi kí tự bằng kí tự đứng sau nó n vị trí
Ví dụ: Với N=3 và N=5 ta có
Bắc
2
7
6
3
16
9
22
15
9
5
1
20
8
21
14
2
4
3
8
Tây
7
25
13
1
19
Đông
24
12
5
18
6
11
4
17
10
23
Nam
Phuơng pháp:
Xuất phát từ ô bên phải của ô nằm giữa. Đi theo hướng đông bắc để điền các số 1, 2, ...
Khi điền số, cần chú ý một số nguyên tắc sau:
- Nếu vượt ra phía ngoài bên phải của bảng thì quay trở lại cột đầu tiên.
- Nếu vượt ra phía ngoài bên trên của bảng thì quay trở lại dòng cuối cùng.
- Nếu số đã điền k chia hết cho N thì số tiếp theo sẽ được viết trên cùng một hàng với k nhưng cách 1 ô về phía bên phải.
Bài tập 2: Viết chương trình in ra màn hình tam giác Pascal. Ví dụ, với n=4 sẽ in ra hình sau:
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
Ý tưởng:
Tam giác Pascal được tạo ra theo qui luật sau:
+ Mỗi dòng đều bắt đầu và kết thúc bởi số 1.
+ Phần tử thứ j ở dòng k nhận được bằng cách cộng 2 phần tử thứ j-1 và j ở dòng
Bài tập 3: Viết chương trình nhập vào 2 dãy số nguyên (a)n và (b)m, m(n. Kiểm tra xem dãy {b} có phải là dãy con của dãy {a} không?
Bài tập 4: Viết chương trình nhập vào một dãy số nguyên a1, a2, ..., an. Tìm trong dãy {a} một dãy con tăng dần dài nhất (có số phần tử lớn nhất) và in ra màn hình dãy con đó.
Bài tập 5: Cho mảng 2 chiều A cấp mxn. Viết chương trình sắp xếp lại mảng A theo yêu cầu sau:
a/ Các phần tử trên mỗi dòng được sắp xếp theo thứ tự giảm dần.
b/ Các dòng được sắp xếp lại theo thứ tự tăng dần của tổng các phần tử trên mỗi dòng.
Bài 6: Tìm điểm cực tiểu của mảng hai chiều
Một phần tử được gọi là điểm cực tiểu của mảng 2 chiều A[m.n] nếu nó không lứon hơn các phần tử kề nó
Bài 7: Tìm " Phần tử yên ngựa" cuả mảng hai chiều
Phần tử A[i,j] được gọi là "yên ngựa" của mảng hai chiều nếu nó đồng thời là phần tử nhỏ nhất của dòng i và là phần tử lớn nhất của cột j, hoăck A[i,j] phải là phần tử lớn nhất cảu dòng i và là phần tử nhỏ nhất của cột j
Bài 8: Cho ma trận các số nguyên A[m,n], hãy sắp xếp lại ma trận sao cho các phần tử của chúng có giá trị tăng dần theo đường xoắn óc từ ngoài vào trong như hình vẽ sau:
Bài 9: Tìm tất cả các phần tử A[i,j]>0 nằm giữa các phần tử <=0 trong một ma trận vuông A[n,n]
Bài 10: Tìm các phần tử cảu một ma trận vuông là MIN hoặc MAX của các phần tử nằm trên 2 đường chéo chính
Bài 11: Viết chương trình sắp xếp các phần tử của ma trận vuông A[n,n] sao cho các phần tử của nó tăng dần khi đi theo đường zigzag như hình vẽ
Bài tập 11: Viết chương trình để nén và giải nén một xâu ký tự .
Ví dụ: Xâu ‘AAAABBBCDDDDDDDEEF’ sau khi nén sẽ trở thành ‘4A3BC7D2EF’.
Bài 12: CHo mảng số thực vuông kích thước 2n x 2n. Hãy lập các mảng mới bằng cách đổi chổ cho khối ô vuông kích thước n x n của mảng A theo cách sau:
Bài 13 : Để mã hóa một văn bản gồm toàn chữ cái tiếng anh người ta có thể làm như sau: Xếp bảng chữ cái theo vòng tròn, sau đó thay mỗi kí tự bằng kí tự đứng sau nó n vị trí
* Một số tài liệu cũ có thể bị lỗi font khi hiển thị do dùng bộ mã không phải Unikey ...
Người chia sẻ: Trần Đình Hải
Dung lượng: 52,00KB|
Lượt tài: 0
Loại file: doc
Nguồn : Chưa rõ
(Tài liệu chưa được thẩm định)