递归求和一个数字的所有数字

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

例如-

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