6. Ciclo "while"

6.1. while (condición) vs otras opciones

Como vimos anteriormente, el ciclo while (condición) se termina cuando la condición resulta Falsa.
  En esta cátedra por cuestiones didácticas pretendemos que se use while (condición).
  En esta cátedra por cuestiones didácticas pretendemos que se use el while bandera +if.
 While True la otra forma de usar, es muy común, pero es poco didáctica, la cual se puede plantear como una alternativa mas sencilla y que no necesita evaluación previa, simplemente se entra el ciclo while y se sale con un break, en esta sección, mostramos el funcionamiento de ambas implementaciones, incluso la que NO RECOMENDAMOS, salvo que sea necesaria.

while (condición)

while (condición) : Enfoque clásico y preferido para mayor claridad
  • Se recomienda cuando la condición de salida es clara desde el principio.

  • Mejora la legibilidad del código, ya que se entiende de entrada cuándo se detendrá el bucle.

  • Se alinea con la programación estructurada y el principio de claridad sobre astucia.

  • Muy útil en enseñanza, porque obliga a pensar la lógica de control del bucle desde el diseño.


Veamos el otro caso.
while bandera +if 
Es una versión estructurada del while True/break.
  • Equivalente lógico a while True, pero con una variable explícita que controla el bucle.

  • Es más explícito y legible que usar break suelto, ya que se centraliza el control del bucle en la condición, y no en una instrucción dispersa dentro del cuerpo del bucle.

  • También ayuda a evitar múltiples puntos de salida, lo que mejora la mantenibilidad del código.

Consideramos desde la cátedra que esta alternativa es preferible al while True.

veamos un código de while bandera + if

while True + break

⚠️ while True con breakEnfoque flexible pero menos explícito
  • Útil cuando no es fácil definir una condición inicial, especialmente cuando el corte depende de una acción interna, como un return, una excepción, una confirmación del usuario, etc.

  • A veces se considera una “salida forzada” del bucle.

  • Puede usarse para simplificar código en situaciones muy variables, pero si se abusa, puede hacer que el flujo lógico sea menos predecible.

En la cátedra de Informática promovemos  while (condición) ya que es pedagógicamente sólido, porque:

  • Promueve el pensamiento lógico.
  • Refuerza la noción de evaluación condicional previa.
  • Evita que los alumnos abusen del break, lo que puede derivar en estructuras de control confusas o poco elegantes.
Una vez que los estudiantes dominen los fundamentos, se puede introducir while True como una herramienta útil en ciertos contextos, pero no como el enfoque por defecto.


Conclusión

Se recomienda  usar while (condición) siempre que sea posible es una buena práctica, especialmente en entornos educativos. Si no es posible usar while (condición) se recomienda usar while bandera + if , finalmente como último caso  while True+ break para casos realmente justificados.


Hay una herramienta adecuada para cada caso.