SIN · Sintaxis 4 · Control de flujo

21.break y continue

Instrucciones para controlar un ciclo desde dentro: break lo termina de inmediato y continue salta a la siguiente vuelta.

¿Qué es?

break y continue son instrucciones que se usan dentro de un ciclo para cambiar su recorrido:

Instrucción Qué hace Ejemplo cotidiano
break Termina el ciclo de inmediato Buscas tus llaves cajón por cajón y, al encontrarlas, dejas de buscar
continue Salta el resto de esta vuelta y pasa a la siguiente Revisas exámenes y, si uno está en blanco, lo saltas y sigues con el siguiente

Sintaxis (pseudocódigo / Python)

Buscar el primer número negativo en una serie de 5 números.

PSeInt (con bandera)

Algoritmo PrimerNegativo
	Definir i, numero Como Entero
	Definir encontrado Como Logico
	encontrado <- Falso
	i <- 1
	Mientras i <= 5 Y NO encontrado Hacer
		Escribir "Número ", i, ":"
		Leer numero
		Si numero < 0 Entonces
			encontrado <- Verdadero
		SiNo
			i <- i + 1
		FinSi
	FinMientras
	Si encontrado Entonces
		Escribir "El primer negativo está en la posición ", i
	SiNo
		Escribir "No hubo negativos"
	FinSi
FinAlgoritmo

Python (con break)

numeros = [4, 7, -2, 9, -5]
for posicion, numero in enumerate(numeros, start=1):
    if numero < 0:
        print("El primer negativo está en la posición", posicion)
        break
else:
    print("No hubo negativos")

El else de un for (o while) se ejecuta solo si el ciclo terminó sin break.

continue: sumar solo los positivos

numeros = [4, -1, 7, -3, 2]
suma = 0
for numero in numeros:
    if numero < 0:
        continue        # salta los negativos
    suma += numero
print("Suma de positivos:", suma)   # 13

Ejemplo guiado

Problema: pedir contraseñas hasta que sea correcta, con un máximo de 3 intentos.

CONTRASENA = "solutions2026"
MAX_INTENTOS = 3

for intento in range(1, MAX_INTENTOS + 1):
    clave = input(f"Contraseña (intento {intento}): ")
    if clave == CONTRASENA:
        print("Acceso concedido")
        break
    print("Incorrecta")
else:
    print("Cuenta bloqueada por demasiados intentos")

Salida esperada (con hola, 123, solutions2026):

Contraseña (intento 1): hola
Incorrecta
Contraseña (intento 2): 123
Incorrecta
Contraseña (intento 3): solutions2026
Acceso concedido

Errores comunes

# ✗ Incorrecto
edad = 15
if edad < 18:
    break
SyntaxError: 'break' outside loop

Buenas prácticas

  • Úsalos con moderación: muchos break y continue vuelven difícil seguir el ciclo.
  • break es ideal para búsquedas: en cuanto encuentras, sales.
  • Aprovecha el else del ciclo para el caso «no se encontró».
  • Si la condición de salida es clara, ponla en el while en lugar de un break.

Material descargable

Aún no hay material descargable para este tema. Pronto habrá cuadernillos, manuales o laboratorios.

Referencias

Antes conviene ver…

© solutions_ · Fundamentos de programación · 21 break y continue