1Day 1Practice

[codewars] Persistent Bugger

Bittersweet- 2022. 5. 19. 12:08
728x90

Description

persistence 함수를 이용해 양의 매개변수 num을 받아 한자릿수에 도달할 때까지 값을 곱하고 곱한 횟수를 return 하시오.

 

Example(with Result)

39 --> 3 (3*9=27, 2*7=14, 1*4=4)
999 --> 4 (9*9*9=729, 7*2*9=126, 1*2*6=12, 1*2=2)
4 --> 0

 

Solution 1.

더보기

function persistence(num) {

  let times = 0;

  num = num.toString();


  while(num.length !== 1) {

    times++;
    num = num.split('').map(Number).reduce((a,b) => a*b).toString();
  }
  return times;
}

 

Solution 2.

더보기

function persistence(num) {

  for(let i = 0; num > 9; i++) {

    num = num.toString().split('').reduce((a, b) => a * b);

}