Bucles y errores comunes: detectar repeticiones rotas antes de perderte
Aprende a detectar bucles infinitos, contadores mal planteados y condiciones incorrectas, usando consola y lectura paso a paso para depurar con criterio.
Ya sabes repetir tareas con `for` y `while`. El siguiente paso no es aprender más sintaxis, sino evitar los fallos típicos que hacen que un bucle no termine o se comporte distinto de lo esperado.
Esta lección se centra en criterio de depuración: leer el estado, detectar qué no cambia y entender por qué el flujo se rompe.
Es una pieza muy importante porque aquí el alumno empieza a dejar de improvisar y aprende a diagnosticar problemas paso a paso.
Objetivo medible: detectar al menos tres errores comunes en bucles, explicar su causa y corregirlos observando el estado en cada iteración.
- Un bucle parece sencillo hasta que dejas de vigilar qué cambia en cada vuelta.
- La mayoría de errores no vienen del `for` o del `while` en sí, sino de perder de vista la relación entre contador, condición y actualización.
- Cuando una de esas piezas no encaja, el bucle puede quedarse atascado, terminar antes de tiempo o saltarse valores.
- Hay una condición mal planteada.
- El valor de control no se actualiza.
Por qué fallan tantos bucles al empezar
Un bucle parece sencillo hasta que dejas de vigilar qué cambia en cada vuelta.
La mayoría de errores no vienen del `for` o del `while` en sí, sino de perder de vista la relación entre contador, condición y actualización.
Cuando una de esas piezas no encaja, el bucle puede quedarse atascado, terminar antes de tiempo o saltarse valores.
- Hay una condición mal planteada.
- El valor de control no se actualiza.
- El cambio ocurre, pero en la dirección equivocada.
- El programador no observa el estado real durante la repetición.
Error 1: bucle infinito por no actualizar el control
El caso clásico es repetir una condición verdadera sin modificar nunca el valor que la hace avanzar.
Aquí la condición `contador <= 3` empieza siendo verdadera y seguirá siéndolo porque `contador` nunca cambia.
La corrección no consiste en tocar al azar, sino en introducir la actualización que falta dentro del flujo.
- Síntoma: el programa no termina.
- Causa: el estado de control se queda congelado.
- Corrección: actualizar el contador en cada vuelta.
Error 2: condición o límite mal elegido
A veces el bucle sí cambia, pero el problema está en el operador o en el número límite.
Si el objetivo era mostrar del 1 al 5, este bucle se pasa una iteración porque la condición permite llegar a 6.
Este tipo de error enseña algo muy útil: no basta con que el bucle funcione, tiene que cumplir exactamente la regla del problema.
Error 3: actualizar en la dirección equivocada
El contador puede cambiar y aun así no acercarse nunca a la salida del bucle.
La condición pide subir hasta 4, pero la actualización resta en lugar de sumar. Eso hace que el contador se aleje del final y el bucle no salga.
Aquí la depuración no exige magia: basta con observar qué valor toma `pasos` en cada vuelta.
Cómo depurar un bucle paso a paso
Cuando un bucle falla, no conviene reescribirlo entero. Conviene observarlo.
En 2026 sigue siendo una habilidad muy valiosa saber diagnosticar con consola antes de depender de herramientas más avanzadas.
DevTools ayuda mucho, pero la base real es leer el flujo con calma y convertir el comportamiento del programa en algo observable.
- Imprime el valor del contador dentro del bucle.
- Comprueba si el valor cambia de verdad en cada vuelta.
- Verifica si ese cambio acerca o aleja del final esperado.
- Prueba el caso con un rango pequeño antes de ampliarlo.