# C++ Program to Calculate Factorial of a Number Using Recursion

In this example, we will learn a program to to find the sum of natural numbers by using a recursive function.

To understand this example, you should have the knowledge of the following C++ programming topics:

## Factorial of a Number Using Recursion

This program takes a positive integer from user and calculates the factorial of that number. Suppose, user enters 6 then,

Factorial will be equal to 1*2*3*4*5*6 = 720

You'll learn to find the factorial of a number using a recursive function in this example.

Visit this page to learn, how you can use loops to calculate factorial.

## Example: Program to Calculate Factorial Using Recursion

```
#include<iostream>
using namespace std;
int factorial(int n);
int main()
{
int n;
cout << "Enter a positive integer: ";
cin >> n;
cout << "Factorial of " << n << " = " << factorial(n);
return 0;
}
int factorial(int n)
{
if(n > 1)
return n * factorial(n - 1);
else
return 1;
}
```

**Output 1**

Enter an positive integer: 6 Factorial of 6 = 720

##### Working

In the above program, suppose the user inputs a number 6. The number is passed to the `factorial()`

function.

In this function, 6 is multiplied to the factorial of (6 - 1 = 5). For this, the number 5 is passed again to the `factorial()`

function.

Likewise in the next iteration, 5 is multiplied to the factorial of (5 - 1 = 4). And, 4 is passed to the `factorial()`

function.

This continues until the value reaches 1 and the function returns 1. Now, each function returns the value back to compute 1 * 2 * 3 * 4 * 5 * 6 = 720, which is returned to the `main()`

function.

## Next Example

We hope that this Example helped you develop better understanding of the concept of "Factorial of a Number Using Recursion" in C++.

**Keep Learning : )**

In the next Example, we will learn about C++ `Find G.C.D Using Recursion`

.