數字加總 Javascript
Sep 26, 2021
數字加總
Input
取任一整數 n
例如:12346
Output
例如:值為 1+2+3+4+6
解題方法:
- 利用一直除以 10 去得到各個位數的數字
function addDigits(n) {
if(n < 0){ //當 n 不是正整數
n= n * -1 // n * -1 讓 n 成正整數
}
let sum = 0 //sum 變數指的是數字加總的值
while(n!== 0) {
sum += n % 10 //1.將取 n 除以10的餘數數字加入sum
//ex: 12346/10 的餘數為 6 sum = 0+6
n = Math.floor(n / 10) //2.將 n 除以 10 取其整數
//ex: 12346/10 的整數為 1234
//持續上述兩個動作直到 n 被除到為 0
}
return sum
}
2 . 使用字串
function addDigits(n) {
n = n + ' ' //把 n 從 Number 轉為 String
let sum = 0
for(let i=0; i < n.length; i++) { //使用 for迴圈迭代該字串
sum += Number(n(i)) //取每一個字轉換為 Number 並把值加到 sum
}
return sum
}