以下是使用阶乘计算组合的示例。
#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; }
输出结果
Enter n : 10 Enter r : 4 The result : 210
在以上程序中,代码存在于fact()
函数中以计算数字的阶乘。
if (n == 0 || n == 1) return 1; else return n * fact(n - 1);
在该main()
方法中,用户输入两个数字的组合。变量“结果”使用阶乘存储组合的计算值。
cout<<"Enter n : "; cin>>n; cout<<"\nEnter r : "; cin>>r; result = fact(n) / (fact(r) * fact(n-r));