Resumen - Generador de números
Parte de la sección Lógica y flujo de control del Journey de Lua de Coddy. Lección 53 de 54.
Desafío
FácilEscribe una función createNumberGenerator que reciba count y devuelva una cadena que muestre todos los números generados por una corrutina.
Crea una corrutina que genere números secuencialmente comenzando desde 1. Cada vez que se reanude la corrutina, debe producir el siguiente número de la secuencia. Reanuda la corrutina count veces para recopilar todos los números generados y, después, devuélvelos como una sola cadena, con cada número en una línea nueva.
Lógica:
- Crea una función que utilice un bucle para producir los números 1, 2, 3, etc.
- Envuelve esta función en una corrutina usando
coroutine.create() - Reanuda la corrutina
countveces y recopila cada número producido - Concatena todos los números con caracteres de nueva línea entre ellos
- Devuelve la cadena concatenada
Parámetros:
count(número): La cantidad de valores que se generarán a partir de la secuencia
Devuelve: Una cadena que contiene todos los números generados separados por saltos de línea (cadena). Formato: 1\n2\n3
Pruébalo tú mismo
function createNumberGenerator(count)
-- Escribe el código aquí
end
Todas las lecciones de Lógica y flujo de control
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 altas3Conceptos avanzados de funciones
Retorno de múltiples valoresFunciones variádicas (...)Funciones como valores de primera claseFunciones anónimas¿Qué es un Closure?Resumen - Manejador de eventos simple9Corrutinas para principiantes
¿Qué es una corrutina?coroutine create y resumePausar con coroutine.yield()resume y yieldComprobar el estado de la corrutinaResumen - Generador de númerosResumen - Matemática de vectoresPractica por tu cuenta: Compilador de Lua online