Riepilogo - Generatore di numeri
Fa parte della sezione Logica e flusso del percorso Lua di Coddy. Lezione 53 di 54.
Sfida
FacileScrivi una funzione createNumberGenerator che accetta count e restituisce una stringa che mostra tutti i numeri generati da una coroutine.
Crea una coroutine che genera numeri in sequenza a partire da 1. Ogni volta che la coroutine viene ripresa, deve restituire il numero successivo della sequenza. Riprendi la coroutine count volte per raccogliere tutti i numeri generati, quindi restituiscili come un'unica stringa, con ogni numero su una nuova riga.
Logica:
- Crea una funzione che utilizza un ciclo per restituire i numeri 1, 2, 3 e così via.
- Avvolgi questa funzione in una coroutine usando
coroutine.create() - Riprendi la coroutine
countvolte, raccogliendo ogni numero restituito - Concatena tutti i numeri separandoli con caratteri di nuova riga
- Restituisci la stringa concatenata
Parametri:
count(numero): il numero di valori da generare dalla sequenza
Restituisce: una stringa contenente tutti i numeri generati, separati da nuove righe (stringa). Formato: 1\n2\n3
Provalo tu
function createNumberGenerator(count)
-- Scrivi il codice qui
end
Tutte le lezioni di Logica e flusso
1Iterazione avanzata delle tabelle
Iterare con pairs()Iterare con ipairs()pairs() vs. ipairs()Riepilogo - Scheda del personaggio2Altre funzioni della libreria table
table.concat()Costruzione di tabelle e unpack()table.sort()Ordinamento personalizzato con funzioniRiepilogo - Tabellone dei punteggi più alti3Concetti avanzati sulle funzioni
Restituire più valoriFunzioni variadiche (...)Funzioni come valori di prima classeFunzioni anonimeChe cos'è una closure?Riepilogo - Gestore di eventi semplice9Le coroutine per principianti
Che cos'è una coroutine?Creare e riprendere una coroutineMettere in pausa con coroutine.yield()Riprendere e sospendereVerificare lo stato della coroutineRiepilogo - Generatore di numeriRiepilogo - Matematica vettorialeEsercitati da solo: Compilatore Lua online