Está en la página 1de 5

LUIS GABRIEL DÍAZ JIMÉNEZ

Algoritmos y Programas
Sección: D01
FACTORIAL DE UN NÚMERO ENTERO

 Investigue cómo se calculan factoriales utilizando el módulo math de


Python. Escriba un programa que calcule el factorial de un número con el módulo
math. Calcule los siguientes factoriales: 4!, 44!, 144!

Utilizando la herramienta de “math.factorial”


4!=24
44!= 2.65324*10^54
144!=5.550*10^249

 Investigué cual es la fórmula de Stirling para calcular factoriales. Incluya en su


programa una sección que calcule los factoriales utilizando la fórmula aproximada
de Stirling. Calcule los siguientes factoriales: 4!, 44!, 144!

FORMULA DE STIRLING

4!=23.50618
44!=2.65324*10 ^54
144!= Demasiado grande para que lo expresara el programa
LUIS GABRIEL DÍAZ JIMÉNEZ
Algoritmos y Programas
Sección: D01

 Incluya en su programa el cálculo de la diferencia (en %) entre los resultados


obtenidos con la fórmula de Stirling y los resultados obtenidos con el módulo
math. Reporte los porcentajes para los siguientes cálculos: 4!, 44!, 144!

 Investigue cómo se puede medir el tiempo transcurrido durante la ejecución de un


determinado código en Python, a través del módulo time
LUIS GABRIEL DÍAZ JIMÉNEZ
Algoritmos y Programas
Sección: D01
(ellibrodepython.com/tiempo-ejecucion-python). Incluya esos cálculos en su
programa, que lo haga tanto para los cálculos con el módulo math como con la
fórmula de Stirling.

TM= Tiempo de Módulo math


TF= Tiempo de Formula

 4!: TM= 1.8000000001627825e-06 y TF= 1.8999999999991246e-06


 44!: TM= 2.700000000022129e-06 y TF= 1.600000000046009e-06
 144!: No me reporta tiempo al ser un nuero muy grande

 Mida el tiempo de ejecución de los siguientes factoriales usando la fórmula de


Stirling: 4!, 44!, 144!

Tiempo de ejecución:
 4!: 1.0937135219573975 seg
 44!: 1.096846342086792 seg
 144!: No me proporciona un valor
LUIS GABRIEL DÍAZ JIMÉNEZ
Algoritmos y Programas
Sección: D01

 Mida el tiempo de ejecución de los siguientes factoriales usando el módulo math:


4!, 44!, 144!, 444!, 4444!, 44444!, 444444!, 4444444! (este último cálculo,
dependiendo de la computadora, podría tardar hasta +/- 5 minutos) (mida solo el
tiempo de ejecución no reporte los factoriales. Los últimos son números muy
grandes y necesitaríamos cientos de líneas).

Tiempo de ejecución del programa:


4!= 2.711238384246826
44!= 2.9307773113250732
144!= 3.1472928524017334
444!= 6.886367559432983
4444!= 7.332037210464478
44444!= 7.90967059135437
444444!= 15.244144678115845
4444444!= 339.9556851387024
LUIS GABRIEL DÍAZ JIMÉNEZ
Algoritmos y Programas
Sección: D01

También podría gustarte