Условие
На доке FoldBay считают свёртку груза: число умножается на все меньшие целые до 1 (классический факториал, но в нашем сценарии). В script.js напишите рекурсивную foldBay(n). Если аргумент не целое число - верните строку Сбой данных FoldBay. Если n <= 0 - верните 1. Иначе - n * foldBay(n - 1). В #out шесть строк: результаты для 1…5 и для foldBay(2.5). HTML и CSS не трогайте. Сверьте с вкладкой «Результат».
Что нужно сделать
- Создайте функцию
foldBay(n). - Проверка:
typeof+Number.isInteger→ строка сбоя. - База: при
n <= 0верните1. - Шаг:
return n * foldBay(n - 1). - В
#out: 1, 2, 6, 24, 120 и сообщение о сбое.
Подсказка для новичка
Сначала отсекайте «плохой» вход, потом базу, потом самовызов. Без базы рекурсия уйдёт в бесконечность. Дробь вроде 2.5 - не целое, это как раз кейс для строки сбоя.
Стартовый код
Пишите только в script.js. «Помощник» подставит решение по шагам.
Вот так должно получиться
В #out шесть строк: свёртки 1…5 и сообщение о сбое
Как пользоваться IDE
- Предпросмотр — как выглядит ваша страница.
- Результат — какой итог должен получиться.
- Описание задачи — полное условие и справка.
- Задание — краткие шаги 1–2–3 снизу.
- Помощник — подсказки по шагам.
- Черновик — ссылка на ваш код.
- Сброс кода — стартовый шаблон.
Проверка входа
На собеседованиях часто спрашивают валидацию. Сначала typeof n !== "number" или не Number.isInteger(n) - сразу строка сбоя.
База и шаг
При n <= 0 возвращайте 1. Иначе умножайте n на результат foldBay(n - 1).
Вывод
Порядок в #out: 1, 2, 6, 24, 120 и строка Сбой данных FoldBay (из вызова с дробью).
Коротко: валидация → база n<=0 → самовызов → шесть строк.