Here you will get python program to find factorial of number using for and while loop.

Factorial of a number is calculated by multiplying it with all the numbers below it starting from 1.

For example factorial of 4 is 24 (1 x 2 x 3 x 4).

Below program takes a number from user as an input and find its factorial.

## Python Program to Find Factorial of Number

### Using For Loop

1 2 3 4 5 6 7 8 |
num = int(input("enter a number: ")) fac = 1 for i in range(1, num + 1): fac = fac * i print("factorial of ", num, " is ", fac) |

**Output**

*enter a number: 5*

*factorial of 5 is 120*

### Using While Loop

1 2 3 4 5 6 7 8 9 10 |
num = int(input("enter a number: ")) fac = 1 i = 1 while i <= num: fac = fac * i i = i + 1 print("factorial of ", num, " is ", fac) |

**Output**

*enter a number: 4*

*factorial of 4 is 24*

Comment below if you have any queries related to above python factorial program.

why num+1 in for loop ?

Because range(start, end) function will generate numbers from start and end-1. In above program we want to generate numbers from 1 to num, I have used num+1 that means (num+1)-1 which ultimately means num.

def factorial(a):

result=1

for i in range(1,a+1):

result= result*i

return result

a = input(‘ur number please ‘)

y = (factorial(a))

print(y + str (‘is ur answer’))

can any body tell me where is the problem

Hi

i’m Sven Brodowski

my english is not verry good

youre programms are super

I’m learning Python and Java

my Questions

have you got a programm in Python

where can do inverse Matrix

I live in heilbronn germanny

ok see you later

Hello!

I have read my book from Codio and have attempted the challenge. Here is what I have coded:

# Get N from the command line

import sys

N = int(sys.argv[1])

# Your code goes here

N!=N*(N-1)*(N-2)*(N-3)*(N-4)*1

print (N)

It is telling me my output is 4.

I am confused, because if N is 4 based upon what the user input, why is it not completing the calculation?

Can you help?

import math

x = math.factorial(2)

print(x)