Escribir el programa factorial en Python

Escribir el programa factorial en Python
El factorial de un número es el número que obtienes después de multiplicar todos los números de 1 a ese número. El factorial de un número se denota por el '!' símbolo. Por ejemplo, si queremos averiguar el factorial de 4, denotado 4!, entonces el resultado sería 1x2x3x4 = 24. Hay muchas maneras de averiguar el factorial de un número. El factorial se puede determinar en Python utilizando la función incorporada para el bucle y las funciones recursivas. Este tutorial muestra cómo se puede determinar el factorial de un número utilizando varias funciones de Python.

Ejemplo 1: Encuentre el factorial de un número utilizando la función incorporada

Python tiene una función incorporada nombrada factorial() bajo la matemáticas módulo. El siguiente script calcula el factorial de cualquier número utilizando un incorporado factorial() función. En este script, cualquier número entero válido se tomará como entrada, y la función calculará el valor factorial de ese número e imprimirá el valor factorial del número de entrada.

#!/usr/bin/env python3
# Importar módulo de matemáticas
importación matemática
# Tomar cualquier número de valores
n = int (entrada ("Ingrese cualquier número:"))
# Descubre el factorial
Hecho = matemáticas.factorial (n)
# Imprimir el resultado del factorial
Imprimir ("El factorial de %d es %d" %(n, hecho))

Producción

Después de ejecutar el script, 3 se da como número de entrada y la salida de 3!, 6, se imprime.

Ejemplo 2: Encuentre el factorial de un número usando el bucle

El siguiente script muestra cómo puede calcular el factorial de cualquier número sin usar ninguna función incorporada en Python. Aquí el para El bucle se usa para calcular el factorial de un número. Cualquier valor entero de entrada se tomará y almacenará como la variable nombrada norte. Una variable nombrada hecho se usa para almacenar el resultado factorial y se inicializa a 1 antes de entrar en el bucle. Si el valor de norte es más de uno o igual a uno, entonces el bucle iterará para 1 a n+1 veces y calculará el valor factorial. De lo contrario, el bucle verificará si el valor de n es igual a 0 o negativo. Si el valor de n es 0, entonces el resultado factorial será 1; y si el valor de n es un entero negativo, se imprimirá un mensaje de error.

#!/usr/bin/env python3
# Tomar un valor numérico y almacenar en n
n = int (entrada ("Ingrese cualquier número:"))
# Inicializar la variable
Hecho = 1
# Descubra el factorial si el número de entrada es más de 0
Si n> = 1:
# Iterar el bucle para múltiples los números dentro de 1 a n
para i en el rango (1, n+1):
hecho = hecho * i
# Imprima el resultado fcatorial
imprimir ("El factorial de %d es %d." %(n, hecho))
demás:
Si n == 0:
# Imprima el resultado de 0!
Imprimir ("El factorial de", n, "es")
demás:
# Imprima el mensaje de error
Imprimir ("Tiene que ingresar cualquier número positivo")

Producción

El script se ejecuta tres veces, de acuerdo con la siguiente captura de pantalla. El script se ejecuta para los valores de entrada 1, 6 y -8. Las salidas se muestran de acuerdo con los valores de entrada.

Ejemplo 3: Encuentre el factorial de un número utilizando la función recursiva

La función que se llama a sí misma durante la ejecución de la función se denomina función recursiva. El siguiente script muestra la forma de calcular el factorial de cualquier número entero utilizando una función recursiva. Después de tomar el número entero como entrada, la función recursiva Factorial_Resursive () se llamará, con el valor de entrada como argumento. Si el valor de entrada es 0 o 1, entonces se devolverá 1. Si el valor de entrada es negativo, entonces se devolverá el valor del argumento. Si el valor de entrada es más de 1, la función se llamará a sí misma restando el argumento por 1 una y otra vez hasta que calcule el resultado del factorial.

#!/usr/bin/env python3
# Tome un valor numérico
número = int (input ("Ingrese cualquier número:"))
# Defina la función recursiva para calcular el factorial
Def Factorial_recursive (n):
# Almacene el resultado factorial de 0 y 1
Si n == 0 o n == 1:
resultado = 1
# Almacene el número de entrada para el valor negetivo
Elif n < 1:
resultado = n
# Encuentra el resultado factorial de una manera recursiva
demás:
Result = N*Factorial_recursive (N-1)
# Devuelve el resultado
Resultado de retorno
# Llamar a la función
hecho = factorial_recursivo (número)
# Imprima el resultado para un número positivo
Si hecho> = 0:
imprimir ("El factorial de %d es %d." %(número, hecho))
demás:
# Imprima el mensaje para el número negativo
Imprimir ("Tiene que ingresar cualquier número positivo")

Producción

En la siguiente captura de pantalla, el script se ejecuta tres veces con los valores 1, -5 y 8.

Ejemplo 4: Encuentre el factorial de un número con manejo de excepciones

Los tres scripts anteriores solo verifiquen si el número es positivo o negativo. El siguiente script calcula el factorial a través de una función factorial () incorporada con manejo de excepciones. Si el usuario proporciona alguna entrada sin un valor entero, se generará una excepción y se imprimirá un mensaje de error.

#!/usr/bin/env python3
# Importar módulo de matemáticas
importación matemática
# Desafiar el bloque de try
intentar:
# Tome un valor numérico
n = int (entrada ("Ingrese cualquier número:"))
Si n> = 0:
# Descubre el factorial
Hecho = matemáticas.factorial (n)
# Imprimir el resultado del factorial
Imprimir ("El factorial de %d es %d" %(n, hecho))
demás:
# Aumentar la excepción si el número es negativo
aumentar la excepción ("Debe ingresar cualquier número positivo")
# Imprima el mensaje de error para la entrada fraccional
Excepto ValueError:
imprimir ("Tienes que ingresar el número entero")
# Imprimir mensaje de error para la entrada negativa
Excepto la excepción como E:
Imprimir ('Error: %S' %E)

Producción

El script se ejecuta tres veces con los valores H, -3 y 7 en la siguiente captura de pantalla. Aquí, la excepción se genera para el valor, 'H.'

Conclusión

Este tutorial muestra algunas de las diferentes formas en que puede calcular el valor factorial de un número en Python. El concepto del factorial de un número y métodos basados ​​en pitón para calcular el factorial debe ser claro para el lector después de leer este tutorial.