# Factorial of a Number in C++ using while Loop

Before going to the program first let us understand what is a *Factorial of a Number?*

**Factorial of a Number:**

The *factorial of a Number* *n*, denoted by *n*!, is the product of all positive integers less than or equal to *n*.

The value of 0! is 1 according to the convention for an empty product.

For example,

6! = 6 * 5 * 4 * 3 * 2 * 1 = 720

## Program code for Factorial of a Number in C++:

#include<iostream.h> #include<conio.h> void main() { int n,f=1,i=1; clrscr(); cout<<"\n Enter The Number:"; cin>>n; //LOOP TO CALCULATE THE FACTORIAL OF A NUMBER while(i<=n) { f=f*i; i++; } cout<<"\n The Factorial of "<<n<<" is "<<f; getch(); }

**Related: **Factorial of a Number in C using while Loop

## Working:

- First the computer reads the number to find the factorial of the number from the user.
- Then using while loop the value of ‘i’ is multiplied with the value of ‘f’.
- The loop continues till the value of ‘i’ is less than or equal to ‘n’.Finally the factorial value of the given number is printed.

## Step by Step working of the above Program Code:

Let us assume that the number entered by the user is **6**.

- It assigns the value of n=6 , i=1 , f=1
- Then the loop continues till the condition of the while loop is true.

2.1. i<=n (1<=6) , while loop condition is true.

f=f*i (f=1*1) So f=1

i++ (i=i+1) So i=2

2.2. i<=n (2<=6) , while loop condition is true.

f=f*i (f=1*2) So f=2

i++ (i=i+1) So i=3

2.3. i<=n (3<=6) , while loop condition is true.

f=f*i (f=2*3) So f=6

i++ (i=i+1) So i=4

2.4. i<=n (4<=6) , while loop condition is true.

f=f*i (f=6*4) So f=24

i++ (i=i+1) So i=5

2.5. i<=n (5<=6) , while loop condition is true.

f=f*i (f=24*5) So f=120

i++ (i=i+1) So i=6

2.6. i<=n (6<=6) , while loop condition is true.

f=f*i (f=120*6) So f=720

i++ (i=i+1) So i=7

2.7. i<=n (7<=6) , while loop condition is false.

It comes out of the while loop.

- Finally it prints as given below

The Factorial of 6 is 720

- Thus the program execution is completed.

## Output:

### TO DOWNLOAD THE PROGRAM CODE : CLICK HERE

Awesome explanation

thank you