Computer >> 컴퓨터 >  >> 프로그램 작성 >> JavaScript

JavaScript에서 숫자의 지속성 찾기

<시간/>

양의 정수를 받아 추가 지속성을 반환하는 JavaScript 함수를 작성해야 합니다.

정수의 가산 지속성(예:n)은 숫자가 한 자리 정수가 될 때까지 숫자를 해당 숫자의 합으로 대체해야 하는 횟수입니다.

예를 들어 -

숫자가 -

인 경우
1679583

그런 다음

1 + 6 + 7 + 9 + 5 + 8 + 3 = 39   // 1 Pass
3 + 9 = 12                   // 2 Pass
1 + 2 = 3                    // 3 Pass

따라서 출력은 3이어야 합니다.

예시

다음은 코드입니다 -

const num = 1679583;
const sumDigit = (num, sum = 0) => {
   if(num){
      return sumDigit(Math.floor(num / 10), sum + num % 10);
   };
   return sum;
};
const persistence = num => {
   num = Math.abs(num);
   let res = 0;
   while(num > 9){
      num = sumDigit(num);
      res++;
   };
   return res;
};
console.log(persistence(num));

출력

다음은 콘솔의 출력입니다 -

3