Programa de Python para encontrar el factorial de un número

Factorial de un número usando for Loop

Tomemos el ejemplo del código Python que toma un número entero positivo como entrada para determinar el factorial de números enteros positivos. en el siguientewing código, el ciclo comienza con uno y luego se multiplica por cada número que precede al número real cuyo factorial se va a determinar.

El following El código Python ilustra la función factorial mediante un bucle.

Código 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)

Salida:

Input a number
4
The factorial of the number is 24

El programa Python anterior solo toma la entrada de números positivos y no tiene una verificación de números negativos. En este programa, el factor es 1 cuando j es igual a 1. Cuando j es 2, el factor se multiplica por 2 y realizará la acción hasta que j llegue a 4 para llegar a 24.

Factorial de un número usando la declaración IF...else

El following El código Python ilustra la función factorial usando la función. Tomemos el siguientewing Código Python que toma números enteros positivos como entrada para determinar el factorial de números enteros positivos.

En el código Python anterior, no se aplicaba la verificación de números negativos, lo que hacía que la función factorial estuviera incompleta y fuera propensa a generar un mensaje de error si se ingresaban números negativos.

En el código dado, el ciclo comienza con uno y luego se multiplica por cada número que precede al número real cuyo factorial se va a determinar, y la función también busca números negativos.

Código 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))

Salida:

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

Lo anterior programa Python para encontrar factorial de un número solo toma la entrada de números positivos, y tiene una verificación de números negativos usando la declaración if y else de Python. En este programa, el factor es 1 cuando j es igual a 1. Cuando j es 2, el factor se multiplica por 2 y realizará la acción hasta que j llegue a 4 para llegar a 24.

Factorial de un número usando recursividad

El following El código Python ilustra la función factorial mediante recursividad. Tomemos el siguientewing Código Python que toma números enteros positivos como entrada para determinar el factorial de números enteros positivos. En este ejemplo, una función recursiva determina el número factorial.

Código 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))

Producción: -

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

La recursividad se puede explicar como un concepto en el que la función invocada en el módulo de Python puede llamarse a sí misma una y otra vez. Se ejecuta hasta el momento en que se cumple la condición de Python presente en el módulo de Python, donde la función invocada se pasa con valor.

En el programa Python anterior, la función número def factorial sigue llamándose a sí misma de forma recursiva hasta que el número llegue a cero. Una vez que el número llega a cero, lo inicializa como 1, finalizando la recursividad.

Factorial de un número usando matemáticas. factorial()

El following El código Python ilustra la función factorial usando math.factorial(), que se puede usar importando el módulo matemático.

Esta función no acepta números enteros negativos y genera un mensaje de error de valor cuando se proporcionan números flotantes. Tomemos el siguientewing Código Python que toma números enteros positivos como entrada para determinar el factorial de números enteros positivos.

Código 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))

Producción: -

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

Algoritmo para el Programa Factorial en Python

Tomemos un ejemplo que ilustra el concepto de factorial.

Para la determinación del factorial 5, siga lo siguientewing pasos: -

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

¡Aquí, 5! se expresa como 120.

El following El diagrama ayuda a comprender el algoritmo de cálculo factorial y, en este caso, ¡tomemos un ejemplo de factorial 4!

Algoritmo para el programa factorial
¡Algoritmo con ejemplo pictórico de factorial 4!

Aplicación de Factorial en Python

El factorial de un número tiene un amplio nivel de aplicaciones en matemáticas. Aquí hay aplicaciones importantes de Python:

  • Python ayuda en el cálculo, seguido de la impresión factorial en términos más rápidos y eficientes que otros lenguajes de programación disponibles.
  • El código Python es fácilmente comprensible y se puede replicar en diferentes plataformas, y el programa factorial Python se puede incorporar en varias tareas de construcción de modelos matemáticos.

Resumen

  • El factorial de un número puede describirse como el producto o multiplicación de todos los números enteros positivos iguales o menores que el número para el cual se determina el producto o factorial.
  • Hay tres formas en las que se puede ejecutar el factorial de un número en Python.
    1. Cálculo factorial usando For Loop
    2. Cálculo factorial mediante recursividad.
    3. Uso de la función definida por el usuario
  • El factorial de un número se determina para un número entero no negativo y los resultados siempre son números enteros positivos.
  • Por excepción a la regla, un factorial cero está en 1.
  • El factorial de un número tiene un amplio nivel de aplicaciones en matemáticas.

Conozca nuestro próximo tutorial sobre Intercambia dos números sin usar una tercera variable