Open In App

Python program to find the factorial of a number using recursion

Last Updated : 31 Jan, 2023
Comments
Improve
Suggest changes
Like Article
Like
Report

A factorial is positive integer n, and denoted by n!. Then the product of all positive integers less than or equal to n.

n! = n*(n-1)*(n-2)*(n-3)*....*1 

For example:

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

In this article, we are going to calculate the factorial of a number using recursion.

Examples:

Input: 5
Output: 120

Input: 6
Output: 720

Implementation:

If fact(5) is called, it will call fact(4), fact(3), fact(2) and fact(1). So it means keeps calling itself by reducing value by one till it reaches 1.

Python3
# Python 3 program to find  
# factorial of given number 
def factorial(n): 
    
    # Checking the number
    # is 1 or 0 then
    # return 1
    # other wise return
    # factorial
    if (n==1 or n==0):
        
        return 1
    
    else:
        
        return (n * factorial(n - 1)) 

# Driver Code 
num = 5; 
print("number : ",num)
print("Factorial : ",factorial(num)) 

Output
number :  5
Factorial :  120

Time complexity: O(n)

Space complexity: O(n)


Next Article

Similar Reads