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

Bài tập Pascal11(133 câu chưa đáp án)

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 (175.08 KB, 13 trang )

Bài tập Pascal 11
133 bài tập pascal
Phần 1. RẼ NHÁNH, LẶP
Câu 1. Hãy sử dụng vòng lặp For … để tính tổng S = 1 + 1/2 + 1/3 + . . .+1/n, với
n nguyên dương được nhập từ bàn phím. Yêu cầu chương trình có kiểm tra tính hợp
lệ của n.
Câu 2. Viết chương trình giải và biện luận phương trình ax + b = 0 với a và b được
nhập từ bàn phím.
Câu 3. sử dụng câu lệnh Repeat …until để tính tổng S = 1 + 1/2 +1/4 + . . . + 1/
(2n), với n nguyên dương được nhập từ bàn phím. Yêu cầu chương trình có kiểm
tra tính hợp lệ của n.
Câu 4. Sử dụng cấu trúc lặp While … do để tính tổng S= 2 + 5 + . . . + (3n – 1), với
n nguyên dương được nhập từ bàn phím, có kiểm tra tính hợp lệ của n.
Câu 5. Viết chương trình tính và in ra n! với n nguyên dương (n<=7) được nhập từ
bàn phím, yêu cầu chương trình có kiểm tra tính hợp lệ của n.
Câu 6. Viết chương trình tính tổng S = 1-1/2+1/3+…+(-1)
n+1
/n, với n được nhập từ
bàn phím. Yêu cầu chương trình có kiểm tra tính hợp lệ của n.
Câu 7. Viết chương trình nhập vào một số nguyên dương n, kiểm tra xem số đó có
phải nguyên tố hay không?
Câu 8. Viết chương trình tính tổng:
S=2002+2+4+…+2n, với n được nhập từ bàn phím và có kiểm tra giá trị n>0.
Câu 9. nhập vào một số thực a lớn hơn 1. Hãy tìm số nguyên dương n nhỏ nhất sao
cho 1+1/2+…+1/n


a
Câu 10. Hãy tìm tất cả các số nguyên dương có ba chữ số sao cho:
33
c b a abc


++=
3
Câu 11. Nhập xâu kí tự s và 2 số dương n và m, yêu cầu kiểm tra n nhỏ hơn độ dài
của xâu s. Hãy xoá trong xâu s vừa nhậpm kí tự kể từ vị trí thứ n.
Giáo Viên: Hồ Đình Dần, trường THPT Hoàng Mai, Quỳnh Lưu, Nghệ An
1
Bài tập Pascal 11
Câu 12. Viết chương trình nhập vào số nguyên dương n và tính:
S=
1 3 5 ... n, nªu n lÎ
2 4 6 ... n, nªu n ch½n
ì
+ + + +
ï
ï
í
ï
+ + + +
ï
î
Câu 13. Viết chương trình in ra các dãy số dạng sau:
n n-1 n-2 . . . 3 2 1
n-1 n-2 …… 3 2 1
.
.
.
3 2 1
2 1
1
Câu 14. Viết chương trình nhập mảng 1 chiều gồm n số thực , với n nguyên dương

được nhập từ bàn phím. Tính và đưa ra trung bình cộng của các giá trị trong mảng.
Câu 15. Một mảng được xem là đối xứng nếu a[i]=a[n-i+1] với mọi i=1,n. Viết
chương trình nhập vào một mảng một chiều n số nguyên, hãy cho biết mảng đó có
đối xứng hay không?
Câu 16. Viết chương trình nhập vào 2 xâu s1 và s2 (độ dài >=5). Hãy chèn xâu s1
vào xâu s2 tại vị trí thứ 3. in ra màn hình xâu s2 sau khi chèn.
Câu 17. Viết chương trình nhạp vào một ma trận vuông nxn, với n được nhập từ
bàn phím và in ra màn hình các giá trị nằm trên đường chéo chính.
Câu 18. Sử dụng một trong các cấu trúc lặp để viết chương trình tính:
S= 1
2
+ 2
2
+ . . . + n
2
, với n nguyên dương được nhập từ bàn phím.
Câu 19. Tính Pi/4 theo công thức:
S=1-1/3+1/5+…+(-1)
n
/(2n+1)
Câu 20. Tính e
x
theo công thức:
S=e
x
=1+x/1! + x
2
/2! + . . . + x
n
/n!


+ …
Câu 21. Lập chương trình tính tổng S=1-1/2+1/3-1/4+…-1/100
Giáo Viên: Hồ Đình Dần, trường THPT Hoàng Mai, Quỳnh Lưu, Nghệ An
2
Bài tập Pascal 11
Câu 22. Sử dụng cấu trúc case . .. of để xác định số n có chia hết cho 4 hay không?
nếu không thì dư bao nhiêu? với n nhập từ bàn phím.
Câu 23. Lập chương trình nhập một số nguyên và in ra giá trị
N
, khi N<0 thì
thông báo không tồn tại căn bậc 2 của N.
Câu 24. Lập trình tìm số N nguyên dương lớn nhất để cho tổng:
S=10-(1+1/2+1/3+…+1/N) có giá trị nhỏ nhất.
Câu 25. Dùng vòng lặp While … do…lập chương trình tính tổng:
S=1+3+5+…+(2n-1).
Câu 26. Lập chương trình tính n! với n nhập từ bàn phím.
Câu 27. Lập chương trình tính tổng: S=99+98+…+10
Câu 28. Lập chương trình nhập số nguyên dương N. Hãy thông báo ra màn hình giá
trị của thương và dư khi chia số đó cho 7.
Câu 29. Sử dụng vòng lặp for để tính tổng S=1+1/3+1/6+…+1/(3*n), với n>=1
nhập từ bàn phím.
Câu 30. Tính S=1+2+3+…+N, với n>=1 được nhập từ bàn phím. Sử dụng vòng lặp
For ..do và while…do.
Câu 31. Lập chương trình nhập 3 cạnh của một tam giác ABC. Hãy in ra chu vi và
diện tích tam giác đó (diện tích S=
P(P a)(P b)(P c)− − −
trong đó P là nữa chu vi).
Câu 32. Sưe dụng vòng lặp While…do lập chương trình tính tổng:
S=10+11+12+…+100.

Câu 33. Nhập một số kiểu longint, kiểm tra xem số đó có bao nhiêu chữ số lẻ. In
kết quả ra màn hình.
Câu 34. Lập trình tìm số N nguyên dương nhỏ nhất để cho tổng S=1+1/2+1/3+…
+1/N lớn hon số a cho trước với a được nhập từ bàn phím.
Câu 35. Dùng lệnh Repeat…Until tính N! với N nhập từ bàn phím.
Câu 36. Dùng vòng lặp While..do.. để tính tổng:
S=1/100+1/99+1/98+…+1/n, với n nhập từ bàn phím và n<100.
Giáo Viên: Hồ Đình Dần, trường THPT Hoàng Mai, Quỳnh Lưu, Nghệ An
3
Bài tập Pascal 11
Câu 37. Lập chương trình tìm ước số chung lớn nhất của hai số M, N được nhập từ
bàn phím.
Câu 38. Lập chương trình tính n! bằng phương pháp đệ quy và khử đệ quy (Đệ quy
là sử dụng lời gọi đến chính nó vidụ: n!=n*(n-1)!; khử đệ quy là sử dụng vòng lặp
For..do…).
Câu 39. Viết chương trình tính:
S=1/1! + 2/2! + … + n/n! + … sao cho phần tử cuối cùng của dãy bé thua một số a
được nhập từ bàn phím với 0<a<1.
Câu 40. Sử dụng lệnh Case … of tính số ngày của một tháng (tháng 1, 3, 5, 7, 8, 10,
12 có 31 ngày; tháng 4, 6, 9, 11 có 30 ngày; tháng 2 có 28 ngày nếu năm đó chia
hết cho 4 ngược lại có 29 ngày).
Câu 41. Sử dụng thuật toán đẹ quy giải bài toán tháp Hà Nội.
(Bài toán tháp Hà Nội phát biểu như sau: Có n đĩa được đặt xuyên qua một cái cọc
(cọc A) sao cho đĩa nhỏ lên trên. Làm thế nào để chuyển toàn bộ đĩa từ cọc A sang
một cọc B sao cho thứ thự đĩa không thay đổi, mỗi lần chuyển chỉ chuyển được
một đĩa từ cọc này sang cọc khác, khi chuyển đĩa nhỏ phải nằm trên đĩa to và chỉ sử
dụng được một cọc trung gian cọc C).
Phần 2. KIỂU MẢNG
Câu 1. Lập chương trình nhập vào mảng n số nguyên tăng dần sau đó chèn một số
nguyên n

0
sao cho sau khi chèn mảng tạo thành cũng là mảng tăng dần và khi tiến
hành chèn không làm thay đổi thứ tự của các phần tử của mảng. In ra mảng sau khi
chèn và vị trí của phần tử vừa chèn.
Câu 2. Lập chương trình nhập vào một dãy n số nguyên từ bàn phím (N nhập từ
bàn phím). In ra màn hình các phần tử khác nhau của dãy.
Câu 3(sgk trang 80). Lập chương trình nhập vào một mảng hai chiều n hàng, n cột.
Tìm phần tử lớn nhất trên mỗi hàng và đổi chổ cho phần tử có chỉ số hàng bằng chỉ
số cột.
Câu 4. Nhập vào n tam giác (n được nhập từ bàn phím) gồm đáy và đường cao.
Tính diện tích của các tam giác và sắp xếp chúng theo thứ tự tăng dần. In ra màn
hình kết quả sau khi sắp xếp gồm các thông báo: Đường cao, đáy, diện tích.
Câu 5. Lập chương trình tính giá trị của đa thức P(x) bậc n (n nhập từ bàn phím).
P(x)=a
0
x
n
+ a
1
x
n-1
+…+a
n-1
x + a
n

, tại giá trị x
0
của đối số (x
0

được nhập từ bàn
phím).
Giáo Viên: Hồ Đình Dần, trường THPT Hoàng Mai, Quỳnh Lưu, Nghệ An
4
Bài tập Pascal 11
Câu 6. Lập chương trình tính tổng các phần tử trên đường chéo chính của một ma
trận vuông cấp n các số thực và in kết quả tính được ra màn hình. Giá trị n và các
phần tử của ma trận được nhập từ bàn phím.
Câu 7. Lập chương trình nhập mảng 7 số nguyên. Hãy cho biết mảng đó đã được
sắp xếp tăng dần hay chưa?
Câu 8. lập chương trình nhập mảng n số nguyên, in ra màn hình vị trí cùng giá trị
của phần tử nhỏ nhất và phần tử lớn nhất.
Câu 9. Nhập một mảng hai chiều hai hàng, hai cột các số nguyên. In ra màn hình
mảng vừa nhập theo kiểu ma trận. Hãy in giá trị nhỏ nhất của mảng đó.
Câu 10. Lập chương tình nhập vào một mảng n phần tử, tính và đưa ra màn hình số
lượng các phần tử lớn hơn 0 và số lượng phần tử bé hơn 0.
Câu 11. Lập chương trình nhập vào một ma trận m hàng, n cột gồm các số nguyên.
Hãy in ra màn hình ma trận chuyển vị của nó.
Câu 12. Lập chương trinh nhập vào một dãy N phần tử, đếm và in ra màn hình số
lượng các phần tử trong dãy có giá trị bằng giá trị lớn nhất, và đưa ra màn giá trị
lớn nhất cùng vị trí của các phần tử đó trong dãy.
Câu 13. Lập chương trình nhập một mảng N số nguyên, in ra màn hình giá trị của
từng phần tử của mảng và tổng các phần tử của mảng.
Câu 14. Viết chương trình nhập mảng một chiều gồm n số thực (với n nguyên
dương được nhập từ bàn phím) và một số thực x. hãy in ra vị trí các phần tử trong
mảng có giá trị bằng x, nếu không có phần nào có giá trị bằng x thì thông báo là
không có
Câu 15. Một mảng A có n phần tử được xem là tăng dần nếu thoả mãn điều kiện
A[i]<=A[i+1] với mọi i=1..n-1. Lập chương trình nhập một mảng n số nguyên với
n nguyên dương được nhập từ bàn phím và cho biết mảng đó có tăng dần hay

không?
Câu 16. Viết chương trình nhập vào một mảng số thực, với n nguyên dương được
nhập từ bàn phím và có kiểm tra tính hợp lệ của n. In ra giá trị lớn nhất và vị trí các
phần tử đạt giá trị đó trong mảng.
Giáo Viên: Hồ Đình Dần, trường THPT Hoàng Mai, Quỳnh Lưu, Nghệ An
5

×