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

Функции: Олимпиада для котов

Кекс с друзьями решили организовать Олимпийские игры для котов. Как опытные организаторы, они начали с самого главного — выбора даты. Привычная нам Олимпиада проводится каждые четыре года. А кошачья будет идти по другим правилам — она будет проходить в те года, когда сумма цифр в номере года будет составлять какое-то конкретное число. Правда, организаторы пока не решили какое именно. Вам, как обычно, надо помочь Кексу.

Мяу! Напиши программу getYears, которая будет возвращать массив с подходящими датами для Олимпиады.

Функция должна принимать на вход три параметра. Первый параметр — год, с которого нужно начать вести отсчёт (включительно). Второй — год, которым этот отсчёт надо закончить (включительно). Третий — число, которое обозначает сумму цифр в номере года.

Названия параметров могут быть любыми.

Годы в массиве должны быть числами и располагаться по возрастанию, от меньшего к большему.

Что значит «число, которое обозначает сумму цифр в номере года»? Например, нам нужно найти даты, в которых сумма цифр составляет число 9.

// 2025 год
// Складываем каждую цифру
2 + 0 + 2 + 5 = 9
// Сумма равна 9, 2025 год нам подходит

// 2019 год
2 + 0 + 1 + 9 = 12
// Сумма равна 12, 2019 год не годится

В этой задаче вам пригодится перевод числа в строку и наоборот. Чтобы из числа сделать строку, используйте String. А чтобы из строки сделать число, можете использовать знакомую вам команду Number.

// Переводим число в строку
String(123); // Вернёт '123'
String(25); // Вернёт '25'

// Переводим строку в число
Number('123'); // Вернёт 123
Number('25'); // Вернёт 25

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

Добавить элементы в массив можно с помощью команды array.push. С ней мы знакомились в этом задании.

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

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

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

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

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

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

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