Riepilogo - Tabellone dei punteggi più alti
Fa parte della sezione Logica e flusso del percorso Lua di Coddy. Lezione 9 di 54.
Sfida
FacileScrivi una funzione updateHighScores che accetta una tabella scores e un numero newScore, e restituisce la classifica aggiornata contenente solo i 5 punteggi più alti in ordine decrescente.
Aggiungi il nuovo punteggio alla tabella, ordina tutti i punteggi dal più alto al più basso e mantieni solo i 5 punteggi più alti.
Logica:
- Usa
table.insert()per aggiungere il nuovo punteggio alla tabella dei punteggi - Usa
table.sort()con una funzione di confronto personalizzata per ordinare i punteggi in ordine decrescente (dal più alto al più basso) - Se la tabella contiene più di 5 punteggi, usa
table.remove()per rimuovere quelli che vanno oltre i primi 5 - Restituisci la tabella dei punteggi aggiornata
Parametri:
scores(tabella): una tabella in stile lista contenente gli attuali punteggi record come numerinewScore(numero): il nuovo punteggio da aggiungere alla classifica
Restituisce: una tabella contenente i 5 punteggi più alti ordinati dal più alto al più basso (tabella)
Provalo tu
function updateHighScores(scores, newScore)
-- Scrivi il codice qui
endTutte 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ù altiEsercitati da solo: Compilatore Lua online