在 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
广告