Молот Шотландцев
Высший разум
(300965)
1 год назад
Допустим функция берет параметром number число 4566
Задаем счетчик i и цикл while, который выполняется пока параметр number больше 9, то есть не является однозначным числом.
На каждом шаге число преобразуется в массив цифр этого числа.
let [a, ...b] = number.toString();
Цикл for ... of получает произведение цифр нашего числа.
4*5*6*6= 720
Плюсуем счетчик i на один.
Параметр number меняем с 4566 на получившееся 720
720 > 9. Продолжаем цикл while.
Повторяем. 7*2*0 = 14
number = 14
i += 1
1 +1 = 2
Повторяем. 1 * 4 = 4
number = 4
4 меньше 9
Выполнилось условие выхода из whille. Возвращаем то что накопилось в i.
Это число 2.
Хотя ты и не заслуживаешь помощи...
VIktorУченик (43)
1 год назад
боже, вы вообще что ли ноулайфер который в интернете живет? я в шоке, азхппзх, идите прогуляйтесь, чисто чел ненавидит весь род человеческий походу
Например (Ввод --> Вывод) :
39 --> 3 (because 3*9 = 27, 2*7 = 14, 1*4 = 4 and 4 has only one digit)
999 --> 4 (because 9*9*9 = 729, 7*2*9 = 126, 1*2*6 = 12, and finally 1*2 = 2)
4 --> 0 (because 4 is already a one-digit number) нашел код на эту задачу, но хотелось бы понять как он работает