C++ Program to Find the Factorial of a Number

In this example, you’ll learn to find the factorial of a number without using a recursive function.
To understand this example, you should have the knowledge of following R programming topics:
  • R if…else Statement
  • R for Loop

The factorial of a number is the product of all the integers from 1 to that number. For example, the factorial of 6 (denoted as 6!) is 1*2*3*4*5*6 = 720.
Factorial is not defined for negative numbers and the factorial of zero is one, 0! = 1.

This example finds the factorial of a number normally. However, you can find it using recursion as well.
Source Code:


Factorial program in C++

Factorial Program in C++: Factorial of n is the product of all positive descending integers. Factorial of n is denoted by n!. For example:
  1. 4! = 4*3*2*1 = 24  
  2. 6! = 6*5*4*3*2*1 = 720    
Here, 4! is pronounced as "4 factorial", it is also called "4 bang" or "4 shriek".
The factorial is normally used in Combinations and Permutations (mathematics).
There are many ways to write the factorial program in C++ language. Let's see the 2 ways to write the factorial program.
  • Factorial Program using loop
  • Factorial Program using recursion

Factorial Program using Loop

Let's see the factorial Program in C++ using loop.
  1. #include <iostream>  
  2. using namespace std;  
  3. int main()  
  4. {  
  5.    int i,fact=1,number;    
  6.   cout<<"Enter any Number: ";    
  7.  cin>>number;    
  8.   for(i=1;i<=number;i++){    
  9.       fact=fact*i;    
  10.   }    
  11.   cout<<"Factorial of " <<number<<" is: "<<fact<<endl;  
  12.   return 0;  
  13. }  
Output:
Enter any Number: 5  
 Factorial of 5 is: 120   

Factorial Program using Recursion

Let's see the factorial program in C++ using recursion.
  1. #include<iostream>    
  2. using namespace std;      
  3. int main()    
  4. {    
  5. int factorial(int);    
  6. int fact,value;    
  7. cout<<"Enter any number: ";    
  8. cin>>value;    
  9. fact=factorial(value);    
  10. cout<<"Factorial of a number is: "<<fact<<endl;    
  11. return 0;    
  12. }    
  13. int factorial(int n)    
  14. {    
  15. if(n<0)    
  16. return(-1); /*Wrong value*/      
  17. if(n==0)    
  18. return(1);  /*Terminating condition*/    
  19. else    
  20. {    
  21. return(n*factorial(n-1));        
  22. }    
  23. }  
Output:
Enter any number: 6   
Factorial of a number is: 720

#include <iostream>
using namespace std;
int main()
{
    unsigned int n;
    unsigned long long factorial = 1;
    cout << "Enter a positive integer: ";
    cin >> n;
    for(int i = 1; i <=n; ++i)
    {
        factorial *= i;
    }
    cout << "Factorial of " << n << " = " << factorial;    
    return 0;
}

Post a Comment

 
Top