Given an integer num, repeatedly add all its digits until the result has only one digit, and return it.

    給予一個整數 num,重複相加所有的數字直到結果只有個位數,並回傳該值。
    
    ex. Input: nums = 18
    18 = 1 + 8 --> 9
    return 9
    

    Example 1:

    Input: num = 38
    Output: 2
    Explanation: The process is
    38 --> 3 + 8 --> 11
    11 --> 1 + 1 --> 2 
    Since 2 has only one digit, return it.
    

    Example 2:

    Input: num = 0
    Output: 0
    

    Solution:
    1. 如果 num 介於 0 ~ 9 之間,回傳 num。
    2. 當 (num > 9)時宣告 sum = 0,且
    3. 當 (num 的整數不等於 0),
    執行以下:
    (1.) sum = 0 + 個位數
    (2.) num = num / 10

    將 num = sum,回傳 num。

    Code 1:

    var addDigits = function(num) {
      if (num < 10 && num >= 0) return num
    
      while (num > 9) {
        let sum = 0
        while (parseInt(num) !== 0) {
          sum += parseInt(num % 10)
          num /= 10
        }
        num = sum
      }
      return num;
    };
    

    FlowChart:
    Example 1

    Input: num = 38
    
    38 !== 0
    --> 3 + 8 --> 11
    
    11 !== 0
    --> 1 + 1 --> 2 
    
    2 < 9, return 2
    

    Example 2

    Input: num = 0
    
    return 0
    

    Code 2:

    var addDigits = function(num) {
      if (num === 0) return 0;
      if (num % 9 === 0) return 9;
      return num % 9;
    };
    

    Code 3:

    var addDigits = function(num) {
       return 1 + (num - 1) % 9
    };