Python Program to Discover the Factorial of a Quantity

on

|

views

and

comments


What’s Factorial?

In easy phrases, if you wish to discover the factorial of a constructive integer, hold multiplying it with all of the constructive integers lower than that quantity. The ultimate consequence that you just get is the factorial of that quantity. So if you wish to discover the factorial of seven, multiply 7 with all constructive integers lower than 7, and people numbers can be 6,5,4,3,2,1. Multiply all these numbers by 7, and the ultimate result’s the factorial of seven.

If you’re seeking to construct your experience in Python factorial program, take into account getting licensed. This free course on Factorial Program in Python affords you full steerage on the topic and in addition a certificates on completion which is certain to make your CV stand out.

System of Factorial

Factorial of a quantity is denoted by n! is the product of all constructive integers lower than or equal to n:
n! = n*(n-1)*(n-2)*…..3*2*1

10 Factorial

So what’s 10!? Multiply 10 with all of the constructive integers that are lower than 10.
10! =10*9*8*7*6*5*4*3*2*1=3628800

Factorial of 5

To search out ‘5!’ once more, do the identical course of. Multiply 5 with all of the constructive integers lower than 5. These numbers can be 4,3,2,1
5!=5*4*3*2*1=120

Factorial of 0

Since 0 just isn’t a constructive integer, as per conference, the factorial of 0 is outlined to be itself.
0!=1

Factorial program in python
Factorial of a quantity

Computing that is an attention-grabbing downside. Allow us to take into consideration why easy multiplication can be problematic for a pc. The reply to this lies in how the answer is carried out.

1! = 1
2! = 2
5! = 120
10! = 3628800
20! = 2432902008176640000
30! = 9.332621544394418e+157

The exponential rise within the values reveals us that factorial is an exponential perform, and the time taken to compute it could take exponential time.

Factorial Program in Python

We’re going to undergo 3 methods by which we are able to calculate factorial:

  • Utilizing a perform from the mathematics module
  • Iterative strategy(Utilizing for loop)
  • Recursive strategy

Factorial program in Python utilizing the perform

That is probably the most simple technique which can be utilized to calculate the factorial of a quantity. Right here now we have a module named math which comprises a number of mathematical operations that may be simply carried out utilizing the module.

import math
num=int(enter("Enter the quantity: "))
print("factorial of ",num," (perform): ",finish="")
print(math.factorial(num))

TEST THE CODE

Enter – Enter the quantity: 4
Output – Factorial of 4 (perform):24

Factorial program in python utilizing for loop

def iter_factorial(n):
    factorial=1
    n = enter("Enter a quantity: ")
    factorial = 1
    if int(n) >= 1:
        for i in vary (1,int(n)+1):
            factorial = factorial * i
        return factorial
  
num=int(enter("Enter the quantity: "))

print("factorial of ",num," (iterative): ",finish="")
print(iter_factorial(num))

TEST THE CODE

Enter – Enter the quantity: 5
Output – Factorial of 5 (iterative) : 120

Take into account the iterative program. It takes lots of time for the whereas loop to execute. The above program takes lots of time, let’s say infinite. The very objective of calculating factorial is to get the lead to time; therefore, this strategy doesn’t work for big numbers.

Factorial program in Python utilizing recursion

def recur_factorial(n):
    """Operate to return the factorial
    of a quantity utilizing recursion"""
    if n == 1:
        return n
    else:
        return n*recur_factorial(n-1)

num=int(enter("Enter the quantity: "))

print("factorial of ",num," (recursive): ",finish="")
print(recur_factorial(num))

TEST THE CODE

Enter – Enter – Enter the quantity : 4
Output – Factorial of 5 (recursive) : 24

On a 16GB RAM laptop, the above program may compute factorial values as much as 2956. Past that, it exceeds the reminiscence and thus fails. The time taken is much less when in comparison with the iterative strategy. However this comes at the price of the house occupied.

What’s the answer to the above downside?
The issue of computing factorial has a extremely repetitive construction.

To compute factorial (4), we compute f(3) as soon as, f(2) twice, and f(1) thrice; because the quantity will increase, the repetitions improve. Therefore, the answer can be to compute the worth as soon as and retailer it in an array from the place it may be accessed the subsequent time it’s required. Subsequently, we use dynamic programming in such instances. The situations for implementing dynamic programming are

  1. Overlapping sub-problems
  2. optimum substructure 

Take into account the modification to the above code as follows:

def DPfact(N):
    arr={}
    if N in arr:
        return arr[N]
    elif N == 0 or N == 1:
        return 1
        arr[N] = 1
    else:
        factorial = N*DPfact(N - 1)
        arr[N] = factorial
    return factorial
    
num=int(enter("Enter the quantity: "))

print("factorial of ",num," (dynamic): ",finish="")
print(DPfact(num))

TEST THE CODE

Enter – Enter the quantity: 6
Output – factorial of 6 (dynamic) : 720

A dynamic programming answer is very environment friendly when it comes to time and house complexities.

Depend Trailing Zeroes in Factorial utilizing Python

Downside Assertion: Depend the variety of zeroes within the factorial of a quantity utilizing Python

num=int(enter("Enter the quantity: "))
  
# Initialize consequence 
depend = 0
# Preserve dividing n by 
# powers of 5 and 
# replace Depend 
temp = 5
whereas (num / temp>= 1):
    depend += int(num / temp) 
    temp *= 5

# Driver program  
print("Variety of trailing zeros", depend)

Output
Enter the Quantity: 5
Variety of trailing zeros 1

Learn to discover if a string is a Palindrome.

Learn to print the Fibonacci Sequence in Python. Additionally, study synthetic intelligence on-line with the assistance of this AI Course.

Often requested questions

1. What’s factorial in math?

Factorial of a quantity, in arithmetic, is the product of all constructive integers lower than or equal to a given constructive quantity and denoted by that quantity and an exclamation level. Thus, factorial seven is written 4! that means 1 × 2 × 3 × 4, equal to 24. Factorial zero is outlined as equal to 1. The factorial of Actual and Detrimental numbers don’t exist.

2. What’s the method of factorial?

To calculate the factorial of a quantity N, use this method:
Factorial=1 x 2 x 3 x…x N-1 x N

3. Is there a factorial perform in Python?

Sure, we are able to import a module in Python referred to as math which comprises nearly all mathematical features. To calculate factorial with a perform, right here is the code:

import math
num=int(enter(“Enter the quantity: “))
print(“factorial of “,num,” (perform): “,finish=””)
print(math.factorial(num))

Discovered this weblog attention-grabbing? Be taught Synthetic Intelligence On-line with the assistance of Nice Studying’s PGP Synthetic Intelligence and Machine Studying course, and upskill immediately! When you’re at it, try the python course for novices to study extra in regards to the fundamental Python.

Share this
Tags

Must-read

Nvidia CEO reveals new ‘reasoning’ AI tech for self-driving vehicles | Nvidia

The billionaire boss of the chipmaker Nvidia, Jensen Huang, has unveiled new AI know-how that he says will assist self-driving vehicles assume like...

Tesla publishes analyst forecasts suggesting gross sales set to fall | Tesla

Tesla has taken the weird step of publishing gross sales forecasts that recommend 2025 deliveries might be decrease than anticipated and future years’...

5 tech tendencies we’ll be watching in 2026 | Expertise

Hi there, and welcome to TechScape. I’m your host, Blake Montgomery, wishing you a cheerful New Yr’s Eve full of cheer, champagne and...

Recent articles

More like this

LEAVE A REPLY

Please enter your comment!
Please enter your name here