<jupyter_start><jupyter_text>Recordá abrir en una nueva pestaña   FactorialesEl factorial de un número natural es la multiplicación de todos los números anteriores hasta llegar a 1. Por ejemplo el factorial de 5 es igual a $5* 4* 3* 2* 1$, es decir, 120.Igual que con la serie Fibonacci, hay dos formas de resolver este problema: una con un loop for y la otra utilizando funciones recursivas.  Recuerden que cada función recursiva tiene que tener una condición terminal.En el caso de Fibonacci, la condición terminal es que fibo(1) = 1. En el caso de factorial, la condición terminal será factorial(1) = 1 Escriban ahora las dos versiones posibles de la función factorial(x).<jupyter_code># Solución recursiva. 

# Solución iterativa.<jupyter_output><empty_output><jupyter_text>Ahora construyan un módulo que se llame "operaciones" con cualquiera de las dos versiones de la función y luego invoquen a la función factorial del módulo.<jupyter_code># Escriban el archivo operaciones.py

# Importen operaciones

# Invoquen con cualquier valor a operaciones.factorial()<jupyter_output><empty_output>
{'fraction_non_alphanumeric': 0.052968036529680365, 'fraction_numerical': 0.012785388127853882, 'mean_word_length': 5.409356725146199, 'pattern_counts': {'":': 0, '<': 9, '<?xml version=': 0, '>': 9, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'chain_length': '2', 'dir': 'jupyter-structured-clean-dedup', 'id': '385104', 'license': 'MIT', 'n_tokens_mistral': 363, 'n_tokens_neox': 340, 'n_words': 148, 'path': 'Introduccion/3_Modulos_Funciones/ejercicio/ejercicio.ipynb', 'repo_name': 'CarlosRochaA/codes-python-', 'size': '1095'}