La sentencia 'break'
Parte de la sección Fundamentals del Journey de Lua de Coddy — lección 75 de 90.
A veces necesitas salir de un bucle antes de que termine de forma natural. La sentencia break te da este poder: detiene inmediatamente el bucle actual y salta al código que viene después del end del bucle.
Aquí está cómo funciona break en un ejemplo sencillo:
for i = 1, 10 do
if i == 5 then
break
end
print(i)
end
print("Loop finished!")Este bucle normalmente imprimiría los números del 1 al 10, pero la sentencia break lo detiene cuando i es igual a 5. Así que solo imprime 1, 2, 3, 4, y luego salta directamente a “Loop finished!”
Desafío
FácilCrea un sistema de búsqueda de tesoros que utilice un bucle for con una sentencia break para buscar a través de una serie de cofres del tesoro. Comienza creando una variable llamada targetTreasure y asígnale el valor 7.
Escribe un bucle for que busque a través de cofres del tesoro numerados del 1 al 10. Dentro del bucle, imprime el mensaje "Searching chest: " seguido por el número del cofre actual. Luego verifica si el número del cofre actual es igual al valor de targetTreasure. Si coincide, imprime "Treasure found!" y utiliza la sentencia break para salir del bucle inmediatamente.
Después de que el bucle termine (ya sea de forma natural o debido al break), imprime "Search complete" para indicar que la sesión de búsqueda de tesoros ha finalizado.
Hoja de referencia
La sentencia break detiene inmediatamente el bucle actual y salta al código que se encuentra después del end del bucle:
for i = 1, 10 do
if i == 5 then
break
end
print(i)
end
print("Loop finished!")Esto imprime 1, 2, 3, 4, y luego salta a "Loop finished!" cuando i es igual a 5.
Pruébalo tú mismo
-- Establece el tesoro objetivo
local targetTreasure = 7
-- TODO: Escribe tu código aquí
-- Crea un bucle for que busque a través de los cofres del 1 al 10
-- Imprime "Searching chest: " seguido del número del cofre
-- Comprueba si el número del cofre es igual a targetTreasure
-- Si se encuentra, imprime "Treasure found!" y rompe el bucle
-- Después del bucle, imprime "Search complete"Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.
Todas las lecciones de Fundamentals
4Operadores 2 Relacionales y Lógicos
Operadores de IgualdadOperadores RelacionalesEl Operador 'and'El Operador 'or'El Operador 'not'Evaluación de CortocircuitoValores Truthy y FalsyResumen - Lógica Simple7Lógica condicional básica
La sentencia if-thenLa sentencia if-then-elseLa sentencia elseifResumen - Cofre del tesoro10Tablas Parte 1: Estilo de lista
¿Qué es una tabla?Crear una tablaAcceder a elementos por índiceModificar elementos por índiceEl operador de longitud '#'table.insert()table.remove()Resumen - Gestionar miembros del grupo13Proyecto: Tienda de pociones sencilla
Configuración del proyectoAñadir una poción2Variables y tipos de datos
¿Qué es una variable?NúmerosStringsBooleanosEl valor 'nil'La función type()Convenciones de nomenclaturaResumen - Perfil de personaje5Salida básica
Imprimir literalesImprimir variablesImprimir múltiples valoresCombinar cadenas y variablesLa función tostring()EntradaConversión de tipos (Cast)Resumen - Informe de estadoResumen - Hasta 1208Fundamentos de manipulación de strings
string.len()string.upper & string.lowerstring.sub()string.rep()string.find()Repaso - Formatear nombre de usuario3Operadores 1: Aritmética y Concatenación
Operadores aritméticosOperador de móduloOperador de exponenciaciónConcatenación de stringsPrecedencia de operadoresResumen: Cálculos sencillos6Proyecto: Mostrar estadísticas del personaje
Mensaje de bienvenidaDeclarar estadísticas del personaje9Fundamentos de las funciones
Declarar una funciónLlamar a una funciónFunciones con parámetrosFunciones con múltiples parámetrosLa sentencia 'return'Repaso - Calculadora de área12Conceptos básicos de bucles
El bucle whileEl bucle repeat-untilEl bucle for numéricoBucle for con pasoLa sentencia 'break'Resumen - Cuenta regresiva