用 JavaScript 递归求数字的所有位数字和


假设我们需要创建一个函数,该函数接受一个数字,并递归求其位数字和,直到和变为一位数字。

例如,

findSum(12345) = 1+2+3+4+5 = 15 = 1+5 = 6

因此,输出应为 6。

我们来编写这个函数 findSum() 的代码,

示例

// using recursion
const findSum = (num) => {
   if(num < 10){
      return num;
   }
   const lastDigit = num % 10;
   const remainingNum = Math.floor(num / 10);
   return findSum(lastDigit + findSum(remainingNum));
}
console.log(findSum(2568));

我们检查该数字是否小于 10,如果已经是最小化数字,我们应返回它并退出函数,否则我们应返回对该函数的调用,该函数以递归方式从该数字中获取最后一位数字,并将其相加,直到小于 10。

输出

因此,这段代码的输出将为,

3

更新于:19-8-2020

1 千次+浏览

开启您的 职业

通过完成课程获得认证

开始
广告
© . All rights reserved.