Ver Mensaje Individual
  #21 (permalink)  
Antiguo 17/02/2012, 09:06
AlvaroG
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Ejercicios python con solucion

Cualquier while es fácilmente traducible a for, y a la inversa (bueno, en python como el único for es el que itera, quizás no sea tan cierto, pero mantengámonos con esta idea).

Para cualquier bucle, necesitás tres cosas básicas: inicialización, condición de salida y por supuesto el código que vayas a ejecutar

En tu código:
* for itera sobre los números entre 0 y num+1, y tiene implícito el avance para cada número.
* la inicialización es total = 0.
* El bloque de código no necesita cambiar.

Entonces, podés convertirlo fácilmente:
Código Python:
Ver original
  1. total = 0
  2. i = 0 # única inicialización extra requerida
  3. while i <= num: # esto está implícito en el for
  4.     total += i # el bloque de código no cambia
  5. return total

Comentarios aparte:
* el código que pegaste no funciona, porque el "return" está dentro del for.
* podés sustituir el for con algo mucho más simple: return sum(range(num+1))
* no es recomendable, por claridad, repetir el nombre de las variables como lo has hecho con "num"