Menu
Coddy logo textTech

Recapitulação - Placar de recordes

Parte da seção Logic & Flow do Journey de Lua da Coddy — lição 9 de 54.

challenge icon

Desafio

Fácil

Escreva uma função updateHighScores que receba uma tabela scores e um número newScore, e retorne o quadro de pontuações atualizado contendo apenas as 5 melhores pontuações em ordem decrescente.

Adicione a nova pontuação à tabela, ordene todas as pontuações da maior para a menor e mantenha apenas as 5 melhores.

Lógica:

  • Use table.insert() para adicionar a nova pontuação à tabela de pontuações
  • Use table.sort() com uma função de comparação personalizada para ordenar as pontuações em ordem decrescente (a maior primeiro)
  • Se a tabela tiver mais de 5 pontuações, use table.remove() para remover as pontuações além das 5 melhores
  • Retorne a tabela de pontuações atualizada

Parâmetros:

  • scores (tabela): Uma tabela estilo lista contendo as pontuações atuais como números
  • newScore (número): A nova pontuação para adicionar ao quadro

Retorno: Uma tabela contendo as 5 melhores pontuações ordenadas da maior para a menor (tabela)

Experimente você mesmo

function updateHighScores(scores, newScore)
    -- Escreva o código aqui
end

Todas as lições de Logic & Flow