Repaso - Tabla de puntuaciones altas
Parte de la sección Logic & Flow del Journey de Lua de Coddy — lección 9 de 54.
Desafío
FácilEscribe una función updateHighScores que reciba una tabla scores y un número newScore, y devuelva el tablero de puntuaciones más altas actualizado que contenga solo las 5 mejores puntuaciones en orden descendente.
Añade la nueva puntuación a la tabla, ordena todas las puntuaciones de mayor a menor y conserva solo las 5 mejores.
Lógica:
- Usa
table.insert()para añadir la nueva puntuación a la tabla de puntuaciones - Usa
table.sort()con una función de comparación personalizada para ordenar las puntuaciones en orden descendente (la más alta primero) - Si la tabla tiene más de 5 puntuaciones, usa
table.remove()para eliminar las puntuaciones que excedan las 5 mejores - Devuelve la tabla de puntuaciones actualizada
Parámetros:
scores(table): Una tabla de tipo lista que contiene las puntuaciones más altas actuales como númerosnewScore(number): La nueva puntuación para añadir al tablero
Devuelve: Una tabla que contiene las 5 mejores puntuaciones ordenadas de mayor a menor (table)
Pruébalo tú mismo
function updateHighScores(scores, newScore)
-- Escribe el código aquí
endTodas 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