fork download
  1. <?php
  2. function persistence(int $num): int {
  3. $answer = 0;
  4. while ($num >= 9) {
  5. $parts = devideInt($num);
  6. $product = multiplyArrayElements($parts);
  7. $answer++;
  8. $num = $product;
  9. var_dump($num);
  10. }
  11. return $answer;
  12. }
  13.  
  14. function devideInt(int $int): array{
  15. settype($int, "string");
  16. $letters = preg_split('//u', $int, null, PREG_SPLIT_NO_EMPTY);
  17. return $letters;
  18. }
  19.  
  20. function multiplyArrayElements(array $array): int {
  21. $result = 1;
  22.  
  23. foreach ($array as $number) {
  24. $result *= $number;
  25. }
  26. return $result;
  27. }
  28.  
  29. $a = persistence(999);
  30.  
  31. echo $a;
Success #stdin #stdout 0s 82944KB
stdin
Standard input is empty
stdout
int(729)
int(126)
int(12)
int(2)
4