# Factorial Using Python Programming

Filed Under: Python Before we start implementing factorial using Python, let us first discuss what factorial of a number implies.

Theoretically, the factorial of a number is defined as the product of all positive integers less than or equal to the number. Certainly, ‘n!’ represents the factorial of an integer ‘n’. As an example, let us look at the factorial of the number 6,

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

The following techniques could be followed to determine the factorial of an integer.

1. Using Loop
2. Using Recursive function call
3. Using predefined function ‘factorial()’ from the math module

## Using Loop in Python

The below-mentioned code illustrates how we can calculate the factorial of a given number using for loop in Python programming.

```n=9
fact=1
for i in range(2,n+1):
fact=fact*i
print("The factorial of ",n," is: ",fact)
```

Output:

```The factorial of 9 is: 362880
```

## Using Recursion function call in Python

Similarly, we can also calculate the factorial of a given number using a Recursive function. Let us see how

```n=9
def fact(n):
if(n==1 or n==0):
return 1
else:
return n*fact(n-1)

print("The factorial of ",n," is: ",fact(n))
```

Output

```The factorial of 9 is: 362880
```

For a clear understanding of functions and recursion, one can refer to

## Using the factorial() method from the math module in Python

The math module provides a simple way to calculate the factorial of any positive integer. Certainly, the module comes with a pre-defined method ‘factorial()’ which takes in the integer as an argument and returns the factorial of the number. Let’s take a look at how we can use the pre-defined method and consequently find the factorial. The code given below depicts how the method ‘factorial()‘ can be used

```import math
n=9
print("The factorial of ",n," is: ",math.factorial(n))
```

Output:

```The factorial of 9 is: 362880
```

Furthermore, in the case of all of the above-mentioned techniques, we have used a pre-defined value of the integer ‘n’. Also making ‘n’ a user input is possible. This could be easily achieved by substituting the line ‘n=9’ with:

```n=int(input("Enter the number for calculating factorial"))
```

The Python input function is covered in further detail in one of our previous articles.

References:

https://stackoverflow.com/questions/5136447/function-for-factorial-in-python

https://stackoverflow.com/questions/20604185/find-the-best-way-for-factorial-in-python

1. Munendra S. M says:

Hello Sir,
How do you to find the following using switch case statement
1. Factorial
2.amstrong
3.peterson method
I m full doubts this one plz can u give me a solution for this one.
I hope u r reply my doubt and I m waiting for u r reply.
Thank you…

close
Generic selectors
Exact matches only
Search in title
Search in content