Ver Mensaje Individual
  #1 (permalink)  
Antiguo 07/04/2014, 12:02
Avatar de boronix
boronix
 
Fecha de Ingreso: enero-2013
Ubicación: España
Mensajes: 17
Antigüedad: 11 años, 9 meses
Puntos: 0
Pregunta factorial de un numero

Necesito hacer un programa que halle el factorial de cualquier numero. Lo he hecho con un while. Introduzco un entero mayor que 1,entra en un contador y le voy quitando un 1, asi hasta que c=1 y sale del contador. Como podria multiplicar los terminos entre si? o alguna sugerencia para esta mente de chorlito?
#################
Código Python:
Ver original
  1. c=int(input())
  2. while c>1:
  3.   c=c-1
  4.   print(c
#################
He probado con poner en la 3º linea c=(c-1)*c pero claro, se me disparan los numeros #ejem: 5>1 --> c=4*5--->c=20 y asi hasta el infinito.

Aqui he diseñado una funcion factorial. Tambien me da error.

Código Python:
Ver original
  1. def factorial(n):
  2.     if n==0:
  3.         return 1
  4.     else:
  5.         return n*factorial(n-1)
  6.     print factorial(4)

Última edición por AlvaroG; 08/04/2014 a las 12:21 Razón: coloreado de código