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,則它已經是最小值,我們應該返回它;否則,我們應該返回對遞迴函式的呼叫,該函式從數字中遞迴地獲取最後一位數字,並將其相加,直到它小於10。

因此,此程式碼的輸出將為:

3

更新於:2020年10月10日

1K+ 瀏覽量

啟動你的職業生涯

完成課程獲得認證

開始學習
廣告