This code calculates the number of combinations and permutations possible when given two integers n and r.
#include <iostream>
using namespace std;
int fact(int val) {
if (val == 0 || val == 1)
return 1;
else
return val * fact(val - 1);
}
int main() {
int n, r, combination, permutation;
cout << "Enter value of n : ";
cin >> n;
cout << "Enter value of r : ";
cin >> r;
combination = fact(n) / (fact(r) * fact(n - r));
permutation = fact(n) / fact(n - r);
cout << "\nCombination : " << combination << endl;
cout << "Permutation : " << permutation;
return 0;
}
Enter value of n : 9
Enter value of r : 6
Combination : 84
Permutation : 60480
Combination is the number of ways to choose r items from a set of n items. Permutation is the number of ways to arrange r items from a set of n items.
Here, the fact function is used to calculate the factorial of a given number val. The factorial of a number n is calculated by multiplying n with n-1 until we reach 1. The fact function uses a recursive approach to calculate the factorial of a number.
In the main function, the user is asked to enter the values of n and r. The combination is calculated by dividing the factorial of n by the product of factorials of r and n-r. The permutation is calculated by dividing the factorial of n by the factorial of n-r. Finally, the values of combination and permutation are displayed to the user.