Resumen - División segura
Parte de la sección Logic & Flow del Journey de Lua de Coddy — lección 34 de 54.
Desafío
FácilEscribe una función safeDivide que tome a y b y devuelva el resultado de dividir a entre b, o un mensaje de error si la división falla.
La función debe usar pcall() para realizar la operación de división de forma segura. Crea una función interna que realice la división y lance un error si b es cero, luego envuélvela con pcall() para capturar cualquier error.
Lógica:
- Crea una función interna que verifique si
bes 0 - Si
bes 0, llama aerror("Cannot divide by zero") - De lo contrario, devuelve
a / b - Usa
pcall()para ejecutar la función interna - Si tiene éxito, devuelve
"Result: "seguido del resultado de la división - Si ocurre un error, devuelve
"Error: "seguido del mensaje de error
Parámetros:
a(número): El dividendob(número): El divisor
Devuelve: Una cadena que contiene "Result: " seguido del resultado de la división, o "Error: " seguido del mensaje de error (cadena)
Pruébalo tú mismo
function safeDivide(a, b)
-- Escribe el código aquí
end
Todas las lecciones de Logic & Flow
1Iteración avanzada de tablas
Iterar con pairs()Iterar con ipairs()pairs() vs. ipairs()Resumen - Ficha de personaje2Más funciones de la librería table
table.concat()Construcción de tablas y unpack()table.sort()Ordenamiento personalizado con funcionesRepaso - Tabla de puntuaciones altas