Menu
CoddyTech

Итоги — Таблица рекордов

Часть раздела Логика и управление потоком путешествия по Lua на Coddy. Урок 9 из 54.

challenge icon

Задание

Легко

Напишите функцию updateHighScores, которая принимает таблицу scores и число newScore, а затем возвращает обновлённую таблицу рекордов, содержащую только 5 лучших результатов в порядке убывания.

Добавьте новый результат в таблицу, отсортируйте все результаты от наибольшего к наименьшему и оставьте только 5 лучших результатов.

Логика:

  • Используйте table.insert(), чтобы добавить новый результат в таблицу scores
  • Используйте table.sort() с пользовательской функцией сравнения, чтобы отсортировать результаты в порядке убывания (сначала наибольшие)
  • Если в таблице больше 5 результатов, используйте table.remove(), чтобы удалить результаты за пределами 5 лучших
  • Верните обновлённую таблицу результатов

Параметры:

  • scores (table): Таблица в виде списка, содержащая текущие рекорды в виде чисел
  • newScore (number): Новый результат для добавления в таблицу рекордов

Возвращает: Таблицу, содержащую 5 лучших результатов, отсортированных от наибольшего к наименьшему (table)

Попробуйте сами

function updateHighScores(scores, newScore)
    -- Напишите код здесь
end

Все уроки раздела Логика и управление потоком

Потренируйтесь самостоятельно: Онлайн-компилятор Lua