在 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

更新于: 16-9-2020

302 次浏览

开启您的职业生涯

通过完成课程获得认证

开始
广告