Python Програма за намиране на факториел на число

Факториал на число, използващ for Loop

Нека разгледаме примера на код на Python, който приема положително цяло число като вход, за да определи факториела на положителните цели числа. В следния код цикълът започва с единица и след това се умножава по всяко число, което предхожда действителното число, чийто факториел трябва да се определи.

Следният код на Python илюстрира факторната функция с помощта на цикъл.

Python код:

print ("Input a number")
factorialIP = int (input ())
ffactor23 = 1
for j in range (1, factorialIP+1):
   ffactor23 = ffactor23 * j
print ("The factorial of the number is “, ffactor23)

Изход:

Input a number
4
The factorial of the number is 24

Горната програма на Python въвежда само положителни числа и няма проверка на отрицателни числа в нея. В тази програма коефициентът е 1, когато j е равно на 1. Когато j е 2, коефициентът се умножава по 2 и ще извърши действието, докато j достигне 4, за да стигне до 24.

Факториал на число с помощта на оператор IF…else

Следният код на Python илюстрира факторната функция с помощта на функция. Нека разгледаме следния код на Python, който приема положителни цели числа като входни данни, за да определи факториела на положителните цели числа.

В предишния код на Python проверката за отрицателни числа не беше приложена, правейки функцията факториел непълна и склонна да изведе съобщение за грешка, ако отрицателните числа са поставени като вход.

В дадения код цикълът започва с единица и след това се умножава по всяко число, което предхожда действителното число, чийто факториел трябва да се определи, като функцията също така проверява за отрицателни числа.

Python код:

print("Enter a number for the purpose of determining factorial")
factorialIP = int(input())
def factorial(factorialIP):
   if factorialIP < 0:
     print ('Factorial does not exist')
     factor=0
     return factor
   elif factorialIP == 0:
     factor=1
     return factor
     print(factor)
   else:
     factor = 1
     for j in range (1, factorialIP+1):
       factor = factor * j
     return factor
  print ("The factorial of the number is ", factorial(factorialIP))

Изход:

1) Enter a number to determine factorial
   -4
   Factorial does not exist
   The factorial of the number is 0

2) Enter a number to determine factorial
   4
   Factorial does not exist
   The factorial of the number is 24

Горното програма на python за намиране на факториел на число приема въвеждането само на положителни числа и има проверка на отрицателни числа в него, използвайки оператора if и else на python. В тази програма коефициентът е 1, когато j е равно на 1. Когато j е 2, коефициентът се умножава по 2 и ще извърши действието, докато j стане 4, за да стигне до 24.

Факториал на число с помощта на рекурсия

Следният код на Python илюстрира факторната функция, използваща рекурсия. Нека да разгледаме следния код на Python, който приема положителни цели числа като вход, за да определи факториела на положителните цели числа. В този пример рекурсивна функция определя факториела.

Python код:

print("Enter a number for the purpose of determining factorial")
def factorial(num2):
  if num2 < 0:
    return 'Factorial does not exist'
  elif num2 == 0:
     return 1
  else:
     return num2 * factorial(num2-1)
number1 = int(input())
print("The factorial of the number is",factorial(number1))

Изход: –

Enter a number for the purpose of determining factorial
4
The factorial of the number is 24

Рекурсията може да се обясни като концепция, при която функцията, извикана в модула на Python, може да се извиква отново и отново. Той работи до момента, в който условието на Python, присъстващо в модула на Python, бъде удовлетворено, при което извиканата функция се предава със стойност.

В горната програма на Python номерът на функцията def factorial продължава да се извиква рекурсивно, докато и освен ако числото достигне нула. След като числото достигне нула, то инициализира числото като 1, завършвайки рекурсията.

Факториал на число с помощта на математика. факториел()

Следният код на Python илюстрира факторната функция, използваща math.factorial(), която може да се използва чрез импортиране на математическия модул.

Тази функция не приема отрицателни цели числа и извежда съобщение за грешка с грешка в стойността, когато са предоставени числа с плаваща единица. Нека разгледаме следния код на Python, който приема положителни цели числа като входни данни, за да определи факториела на положителните цели числа.

Python код:

print("Enter a number for computing factorial")
import math
number1 = int(input())
print("The factorial is as computed comes out to be ")
print(math.factorial(number1))

Изход: –

Enter a number for computing factorial
4
The factorial, as computed, comes out to be 24

Алгоритъм за факторна програма в Python

Нека вземем пример, който илюстрира концепцията за факториел.

За определяне на факториел 5 следвайте следните стъпки: –

5! = 5 x (5-1) x (5-2) x (5-3) x (5-4)
5! =120

Ето, 5! се изразява като 120.

Следната диаграма помага за разбирането на алгоритъма за изчисляване на факториел и в този случай нека вземем пример за факториел 4!

Алгоритъм за факторната програма
Алгоритъм с графичен пример за факториел 4!

Приложение на Факториал в Python

Факториалът на число има широко ниво на приложение в математиката. Ето важни приложения на Python:

  • Python помага при изчисленията, последван от фактор за печат в по-бързи и по-ефективни термини от други налични езици за програмиране.
  • Кодът на Python е лесно разбираем и може да се репликира в различни платформи, а факторната програма на Python може да бъде включена в няколко задания за изграждане на математически модел.

Oбобщение

  • Факториел на число може да се опише като произведение или умножение на всички положителни цели числа, равни или по-малки от числото, за което продуктът или факториелът се определят.
  • Има три начина, по които факториелът на число в Python може да бъде изпълнен.
    1. Факторно изчисление с помощта на For Loop
    2. Факторно изчисление с помощта на рекурсия.
    3. Използване на дефинирана от потребителя функция
  • Факториелът на число се определя за неотрицателно цяло число и резултатите винаги са в положителни цели числа.
  • По изключение на правилото нулев факториел е 1.
  • Факториалът на число има широко ниво на приложение в математиката.

Научете следващия ни урок за Разменете две числа, без да използвате трета променлива