En una parte de un problema tengo que hacer la función de un factorial. Lo he hecho así:
--------------------------
def fact(factorial,z):
factorial=z
while z>1:
factorial=factorial*(z-1)
z=z-1
def main():
m = input("Da 1 numero")
fact(factorialm,m)
---------------------------
Si hago esto me da un error al ejecutarlo. La variable factorialm no está definida.
Pues lo que me viene a la cabeza es antes de la línea fact(factorialm,m) escribir 'factorialm=X', siendo X un valor cualquiera.
El problema es que al hacer cálculos más adelante, si por ejemplo multiplico factorialm por 4, el resultado será el valor X.
Qué estoy haciendo mal? He probado de poner un return en la función pero no me aclaro...