用 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.