Menu
Coddy logo textTech

Repaso - Tabla de puntuaciones altas

Parte de la sección Lógica y flujo de control del Journey de Lua de Coddy. Lección 9 de 54.

challenge icon

Desafío

Fácil

Escribe una función updateHighScores que tome una tabla scores y un número newScore, y devuelva la tabla de puntuaciones máximas actualizada que contenga solo las 5 puntuaciones más altas 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 puntuaciones más altas.

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 (de mayor a menor)
  • Si la tabla tiene más de 5 puntuaciones, usa table.remove() para eliminar las puntuaciones que queden fuera de las 5 más altas
  • Devuelve la tabla de puntuaciones actualizada

Parámetros:

  • scores (tabla): Una tabla de estilo lista que contiene las puntuaciones máximas actuales como números
  • newScore (número): La nueva puntuación que se añadirá a la tabla

Devuelve: Una tabla que contiene las 5 puntuaciones más altas ordenadas de mayor a menor (tabla)

Pruébalo tú mismo

function updateHighScores(scores, newScore)
    -- Escribe el código aquí
end

Todas las lecciones de Lógica y flujo de control

Practica por tu cuenta: Compilador de Lua online