Python Programa para encontrar el factorial de un número
⚡ Resumen inteligente
Factorial de un número en Python es el producto de todos los enteros positivos hasta ese número. Python Lo calcula con un bucle for, una comprobación if-else, recursión o la función integrada math.factorial().

Las secciones siguientes muestran cuatro maneras de calcular un factorial en Python — un bucle for, una versión if-else, recursión y math.factorial() — además del algoritmo subyacente y sus aplicaciones.
Factorial de un número usando for Loop
Tomemos como ejemplo Python Código que toma como entrada un entero positivo para calcular el factorial de enteros positivos. En el siguiente código, el bucle comienza con uno y luego multiplica por cada número que precede al número cuyo factorial se desea calcular.
Las siguientes Python El código ilustra la función factorial mediante un bucle.
Python código:
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
Lo anterior Python El programa solo acepta números positivos como entrada y no realiza ninguna comprobació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 el proceso continúa hasta que j sea igual a 4, llegando así a 24.
Factorial de un número usando la declaración IF...else
Las siguientes Python Este código ilustra la función factorial mediante una función. A diferencia de la versión con bucle, este programa también comprueba si hay números negativos antes de calcular el factorial.
En el anterior Python En el código, no se aplicó la comprobación de números negativos, lo que hizo que la función factorial estuviera incompleta y fuera propensa a generar un mensaje de error si se introducían números negativos.
En el código proporcionado, el bucle comienza con uno y multiplica por cada número anterior, y la función también valida la entrada para detectar números negativos.
Python código:
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
Este Python El programa acepta números positivos y añade una comprobación para números negativos mediante la instrucción if/else, devolviendo correctamente 24 para una entrada de 4.
Factorial de un número usando recursividad
Las siguientes Python Este código ilustra la función factorial mediante recursión. En este ejemplo, una función recursiva que recibe como entrada un número entero positivo determina el factorial.
Python código:
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))
Salida:
Enter a number for the purpose of determining factorial 4 The factorial of the number is 24
La recursión puede explicarse como un concepto en el que la función invocada en el Python El módulo puede llamarse a sí mismo una y otra vez. Se ejecuta hasta que... Python Se cumple la condición presente en el módulo, en la cual se pasa un valor a la función invocada.
En lo anterior Python En este programa, la función `def factorial` se llama a sí misma recursivamente hasta que el número llega a cero. Una vez que el número llega a cero, se inicializa con el valor 1, finalizando así la recursión.
Factorial de un número usando math.factorial()
Las siguientes Python El código ilustra la función factorial usando math.factorial(), que se puede usar importando el módulo math.
Esta función no acepta números enteros negativos y genera un error de valor cuando se proporcionan números decimales.
Python código:
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))
Salida:
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 determinar el factorial 5, siga estos pasos:
5! = 5 x (5-1) x (5-2) x (5-3) x (5-4) 5! =120
¡Aquí, 5! se expresa como 120.
El siguiente diagrama ayuda a comprender el algoritmo de cálculo factorial y, en este caso, ¡tomemos un ejemplo de factorial 4!
¡Algoritmo con ejemplo pictórico de factorial 4!
Aplicación del 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 del factorial en términos más rápidos y eficientes que otros lenguajes de programación disponibles.
- El Python El código es fácilmente comprensible y se puede replicar en diferentes plataformas, y el factorial Python El programa puede incorporarse en varias tareas de construcción de modelos matemáticos.

