Giai thừa của số nguyên không âm n là tích của tất cả các số nguyên dương nhỏ hơn hoặc bằng n.
Ví dụ: Giai thừa của 4 là 24.
4! = 4 × 3 × 2 × 1 4! = 24
Giai thừa có thể tìm bằng chương trình đệ quy hoặc lặp. Chương trình sau minh họa phương pháp đệ quy:
Ví dụ
#include <iostream>
using namespace std;
int fact(int n) {
if ((n == 0) || (n == 1))
return 1;
else
return n * fact(n - 1);
}
int main() {
int n = 4;
cout << "Giai thừa của " << n << " là " << fact(n);
return 0;
}
Kết quả đầu ra
Giai thừa của 4 là 24
Trong chương trình, hàm fact() là hàm đệ quy. Hàm main() gọi fact() với số cần tính giai thừa:
cout << "Giai thừa của " << n << " là " << fact(n);
Nếu số là 0 hoặc 1, fact() trả về 1. Nếu là số khác, fact() gọi đệ quy chính nó với giá trị n-1:
int fact(int n) {
if ((n == 0) || (n == 1))
return 1;
else
return n * fact(n - 1);
}