Professional Documents
Culture Documents
Ontap Dequy
Ontap Dequy
Ontap Dequy
Mệnh đề cơ sở: là mệnh đề thiết lập điều kiện kết thúc đệ quy
(thường ứng với quy mô nhỏ nhất của bài toán).
Mệnh đề đệ quy: là mệnh đề gọi lại hàm với quy mô khác (thường là
nhỏ hơn).
Kỹ thuật lập trình đệ quy
(B1) Xác định và mô tả mệnh đề cơ sở.
(B2) Xác định và mô tả mệnh đề đệ quy.
Áp dụng của đệ quy
Đệ quy thường được áp dụng cho các kỹ thuật chia-để-trị, quay-lui.
n × ( n−1 ) × … ×(n−k +1)
BT1. Viết chương trình tính C nk = .
1× 2× … ×k
BT2. Viết chương trình tình phần tử thứ n của dãy Fibonacci biết rằng
phần tử thứ nhất bằng 0, phần tử thư 2 bằng 1, phân tử thứ n > 2 bằng
tổng hai phần tử trước nó.
BT3. Viết chương trình tính BCNN của 2 số nguyên a, b.
BT4. Viết chương trình tính tổng, max, min một dãy có n số a0,a1,…, an-1
BT5. Một dãy được gọi là có thứ tự tăng (giảm) nếu ai ai+1 (hay ).
Viết chương trình kiểm tra dãy a0,…, an-1 có phải dãy tăng.
BT6. Viết chương trình kiểm cho biết vị tri của một giá trị x trong
danh sách a0, a1,…, an-1 (kết quả = -1 nếu x không có trong danh sách).
BT7. Viết chương trình BT6 trong trường hợp dãy có thứ tự giảm.
BT8. Viết chương trình in ra biểu diễn nhị phân của một số nguyên
dương.
BT9. Viết chương trình liệt kê các chuỗi nhị phân n bit.
BT10. Viết chương trình liệt kê các chuỗi k-phân n kí hiệu.
BT11. Viết chương trình in ra tất cả hoán vị của dãy n kí hiệu phân
biệt. VD từ ‘abc’ có ‘acb’,’bac’,’bca’,’cab’, ‘cba’.
BT12. Viết chương trình in ra có chuỗi k kí hiệu của chuỗi n > k kí
hiệu. VD ‘1234’, k = 2, có ‘12’,’13’,’14’,’21’,’23’,’24’,…,’43’
BT13. Viết chương trình nhập giá trị T và in ra vị trí các phần tử của
danh sách các số nguyên dương a0,…, an-1 sao cho tổng chúng bằng T. VD A
= [3, 4, 7, 2, 1] và T = 7 thì 30+41, 41+23+13, 72.
BT14. Viết chương trình đổi tiền mệnh giá lớn thành các tờ tiền mệnh
giá nhỏ.
BT15. Một điểm trong mặt phẳng được xác định bằng tọa độ Pi = [xi,yi]
R2. Cho danh sách n đỉnh của một n-giác lồi: P0,…, Pn-1. Tính diện tích
của n-giác này.