Recursive Solution

Factorial can be calculated using the following recursive formula.

  n! = n * (n-1)!
  n! = 1 if n = 0 or n = 1

Below is the C++ program to find the factorial of a number using a recursive solution:

C++




// C++ program to find factorial
// of given number
#include <iostream>
using namespace std;
 
// Function to find factorial of
// given number
unsigned int factorial(unsigned int n)
{
    if (n == 0)
        return 1;
    return n * factorial(n - 1);
}
 
// Driver code
int main()
{
    int num = 5;
    cout << "Factorial of " << num << " is "
         << factorial(num) << endl;
    return 0;
}


Output

Factorial of 5 is 120

The complexity of the above method

Time complexity: O(n) where n is the length of the string.

Auxiliary Space: O(n) 

C++ Program To Find Factorial Of A Number

The Factorial of a non-negative integer is the multiplication of all integers smaller than or equal to n. For example, the factorial of 6 is 6*5*4*3*2*1 which is 720. 

 

Similar Reads

Recursive Solution

Factorial can be calculated using the following recursive formula....

Iterative Solution

...

Using Ternary Operator

Factorial can also be calculated iteratively as recursion can be costly for large numbers. Here we have shown the iterative approach using both for and while loops....

Using Call By Reference

...

Contact Us