Một số bài tập Pascal nâng cao

Một số bài tập Pascal nâng cao

Một số bài tập Pascal nâng cao là tài liệu tham khảo hay, giúp các bạn học sinh lớp 11 tiếp cận với ngôn ngữ lập trình Pascal một cách dễ dàng và vận dụng vào các ngôn ngữ lập trình khác trong tin học. CÁc bài tập Pascal này cũng là tài liệu bồi dưỡng học sinh giỏi môn Tin hữu ích dành cho quý thầy cô và các bạn tham khảo, luyện tập. Chúc các bạn học tốt môn Tin học lớp 11

VnDoc.com xin gửi tới bạn đọc bài viết Một số bài tập Pascal nâng cao để bạn đọc cùng tham khảo. Bài viết được VnDoc.com tổng hợp 15 bài tập nâng cao về phần Pascal trong chương trình học môn Tin học lớp 11 như viết phương trình, mã hóa và giải mã hóa, tìm điểm cực tiểu, sắp xếp các phần tử.... Mời các bạn cùng tham khảo chi tiết và tải về tại đây nhé.

Bài tập nâng cao: Pascal

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ó

Một số bài tập pascal nâng cao

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
11
121
1331
14641

Ý 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, mn. 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 tập 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 tập 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 tập 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:

Một số bài tập pascal nâng cao

Bài tập 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 tập 10: Tìm các phần tử của 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 tập 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ẽ

Một số bài tập pascal nâng cao

Bài tập 12: 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 tập 13: 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:

Một số bài tập pascal nâng cao

Bài tập 14: Để 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í trong bảng vòng tròn. Ví dụ n = 7 thì "anh" được mã hóa thành "huo''. Bạn hãy lập chương trình nhập số tự nhiên n sau đó:

a) Mã hóa một văn bản (xâu kí tự)

b) Giải mã một văn bản đã mã hóa

Bài tập 15: Để 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: Thay mỗi kí tự bằng kí tự đứng sau nó trong bảng chữ cái, riêng z thay bằng a. Ví dụ 'anh' được mã hóa thành 'boi'. Bạn hãy lập trình để

a) Mã hóa một văn bản (xâu kí tự)

b) Giải mã một văn bản đã mã hóa

Trên đây VnDoc.com vừa giới thiệu tới các bạn bài viết Một số bài tập Pascal nâng cao. Để có kết quả cao hơn trong học tập, VnDoc xin giới thiệu tới các bạn học sinh tài liệu Sinh học lớp 11, Vật lý lớp 11, Hóa học lớp 11, Giải bài tập Toán 11 mà VnDoc tổng hợp và đăng tải.

Mời bạn đọc cùng tham gia nhóm Tài liệu học tập lớp 11 để có thêm tài liệu học tập nhé

Mời bạn đọc cùng tham khảo thêm các tài liệu:

Đánh giá bài viết
49 36.866
1 Bình luận
Sắp xếp theo
  • 23_ Thu Ngân _
    23_ Thu Ngân _

    Nhập 2 ký tự bất kỳ từ bàn phím, nếu là số thì tính tổng 2 ký tự đó, nếu không phải là số thì hiển thị thông báo.


    Thích Phản hồi 05/11/21

    Môn khác lớp 11

    Xem thêm