Sau đây là một ví dụ để tính toán các kết hợp bằng cách sử dụng giai thừa.
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, r, result; cout<<"Enter n : "; cin>>n; cout<<"\nEnter r : "; cin>>r; result = fact(n) / (fact(r) * fact(n-r)); cout << "\nThe result : " << result; return 0; }
Đầu ra
Enter n : 10 Enter r : 4 The result : 210
Trong chương trình trên, đoạn mã có trong hàm fact () để tính giai thừa của các số.
if (n == 0 || n == 1) return 1; else return n * fact(n - 1);
Trong hàm main (), người dùng nhập hai số kết hợp. Biến 'kết quả' đang lưu trữ giá trị được tính toán của kết hợp bằng cách sử dụng giai thừa.
cout<<"Enter n : "; cin>>n; cout<<"\nEnter r : "; cin>>r; result = fact(n) / (fact(r) * fact(n-r));