Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Опять рекурсия покоя не даёт :)
Форумы портала PHP.SU » » Вопросы новичков » Опять рекурсия покоя не даёт :)

Страниц (1): [1]
 

1. hehagog545 - 08 Сентября, 2020 - 17:41:47 - перейти к сообщению
Задача:
Напишите функцию persistence, которая принимает положительный параметр num и возвращает его мультипликативное постоянство, то есть количество раз, которое вы должны умножить цифры в num, пока не дойдете до единственной цифры..

For example:
PHP:
скопировать код в буфер обмена
  1.  
  2. persistence(39) === 3; // because 3 * 9 = 27, 2 * 7 = 14, 1 * 4 = 4 and 4 has only one digit
  3. persistence(999) === 4; // because 9 * 9 * 9 = 729, 7 * 2 * 9 = 126, 1 * 2 * 6 = 12, and finally 1 * 2 = 2
  4. persistence(4) === 0; // because 4 is already a one-digit number
  5.  


Моё решение, которое не хочет выдавать что нужно:
Спойлер (Отобразить)
Цитата:

рекурсия №1|кол-во символов:3|результат: 729|||
рекурсия №2|кол-во символов:3|результат: 126|||
рекурсия №3|кол-во символов:2|результат: 12|||


Вопрос: почему на рекурсия №3 не происходит дальнейшего счёта (1 * 2 = 2)и ретурн не происходит? Спасибо
2. hehagog545 - 08 Сентября, 2020 - 20:30:14 - перейти к сообщению
Огорчение

 

Powered by ExBB FM 1.0 RC1