• Теория
  • Теория

Кому отдать победу?

Мы сделали самое сложное — разложили игру на составляющие и написали игровой цикл!

Пока мы можем определить победителя игры, посмотрев на список игровых очков в консоли. Сделаем так, чтобы программа сама выявляла чемпиона. Будем писать код в несколько этапов, проверяя работу программы на каждом шагу.

Создадим функцию getWinners, которая будет получать массив игроков, обрабатывать его и определять победителей.

Задача нахождения чемпиона похожа на поиск максимального элемента в массиве: нам нужно пройтись по массиву игроков и найти того, кто набрал наибольшее количество очков. Тут есть сложность: победителей может оказаться больше одного, ведь по ходу игры несколько котов могут набрать одинаковое количество очков. Как быть в этом случае?

Оптимизируем алгоритм поиска максимального элемента в массиве так, чтобы учитывались все игроки с наибольшим количеством очков. Для этого мы заведём массив победителей. Чаще всего этот массив будет состоять из одного элемента, но если в игре окажется несколько чемпионов, мы никого не обидим и запишем всех в ряды победителей.

Для начала введём пустой массив, вернём его из getWinners и проверим, что всё работает.

Минимальный вид табов
  • index.html
HTML
HTML

Вы перешли на другую страницу

Кликните внутри мини-браузера, чтобы поставить фокус в это окно.

100%
Бабушка Кекс

Притормози, дружище

Проходить вызовы части «Объекты» тренажёра «Базовые структуры данных» можно после регистрации и оформления подписки.