我想添加一個整數值的所有數字,直到我得到一個低於9的值使用JavaScript。打破一個整數到零件
爲一個例子,如果我有198,我想一起添加這些樣1 + 9 + 8 = 18,並且由於18是高於9加1 8再次= 9
我想添加一個整數值的所有數字,直到我得到一個低於9的值使用JavaScript。打破一個整數到零件
爲一個例子,如果我有198,我想一起添加這些樣1 + 9 + 8 = 18,並且由於18是高於9加1 8再次= 9
而不是給你完整的代碼,我只是解釋如何做到這一點。
你可以用數字%10和隨後的int除10(數字/ 10)來進行模數學計算,直到你得到0來獲得數字的所有數字。將各個數字相加,直到sum> 9在循環中重複上述過程。
編輯:好這裏是你的代碼:
<script>
var num=198;
n = num;
var sum;
do {
sum = 0;
while (n>0) {
rem = (n % 10);
sum += rem;
n = (n - rem)/10;
}
n = sum;
} while(sum>9);
alert("sum is: " + sum);
</script>
這裏有兩個提示:(i % 10)
給出了i
的最小有效十進制數字,而i /= 10
從i
刪除了最小有效數字。剩下的部分作爲讀者的練習。
function foo(var x)
{
while(x > 9)
{
var y = 0;
while(x!=0)
{
y += x%10;
x = Math.floor(x/10);
}
x = y;
}
return x;
}
這似乎是需要的也許只是一個比你前面的問題http://stackoverflow.com/questions/5151224一步/ how-to-sum-individual-digits-of-integer你不知道額外的步驟還是你不知道JavaScript或兩者或其他的語法?讓我們知道你不瞭解的以及你對這個問題的瞭解,以便我們更好地幫助你。 – blizpasta 2011-03-16 13:16:13