Ktl-icon-tai-lieu

CHƯƠNG VIII: Đệ Quy

Được đăng lên bởi mau-don-van-ban
Số trang: 7 trang   |   Lượt xem: 325 lần   |   Lượt tải: 0 lần
CHƯƠNG VIII:ĐỆ QUY

Định nghĩa
• Một hàm được gọi là đệ quy nếu bên trong
thân hàm có lệnh gọi đến chính nó.
• Ví dụ:
n!=1* 2 * 3 *…* (n-1) *n = (n-1)! *n (với 0!=1)
Như vậy, để tính n! :
nếu n=0 thì n!=1
ngược lại thì n!=n * (n-1)!

Ví dụ: Hàm tính giai thừa đệ quy
int giaithua(int n)
{
if(n==0)
return 1;
else
return n*giaithua(n-1);
}

Phân loại đệ quy

Đệ quy tuyến tính
•

Cú pháp:
KDL TenHam(<Danh sách tham số>)
{
if(<Điều kiện dừng>)
{
…
return <Giá trị trả về>;
}
…
…TenHam(<Danh sách tham số>);
}

Đặc điểm cần lưu ý khi viết hàm đệ quy
Hàm đệ quy phải có 2 phần:
• Phần dừng hoặc phải có trường hợp nguyên
tố. Trong các ví dụ trên thì trường hợp n=0 là
trường hợp nguyên tố.
• Phần đệ quy: là phần có gọi lại hàm đang
được định nghĩa. Trong ví dụ trên thì phần
đệ quy là n>0 thì n! = n * (n-1)!

Ví dụ:tính S (n) =

2 + 2 + 2 + ... + 2

float tongcan(int n)
{
if(n==1)
return sqrt(2);
return sqrt(2+tongcan(n-1))
}

...
CH NG VIII:Đ QUYƯƠ
CHƯƠNG VIII: Đệ Quy - Trang 2
Để xem tài liệu đầy đủ. Xin vui lòng
CHƯƠNG VIII: Đệ Quy - Người đăng: mau-don-van-ban
5 Tài liệu rất hay! Được đăng lên bởi - 1 giờ trước Đúng là cái mình đang tìm. Rất hay và bổ ích. Cảm ơn bạn!
7 Vietnamese
CHƯƠNG VIII: Đệ Quy 9 10 987