将整数分成几部分

时间:2011-03-16 13:08:47

标签: javascript math

我正在尝试添加整数值中的所有数字,直到我使用Javascript获得低于9的值。

例如,如果我有198,我想将这些加在一起,如1 + 9 + 8 = 18,并且由于18高于9,再加1 + 8 = 9。

3 个答案:

答案 0 :(得分:3)

而不是给你完整的代码,我只会解释如何做到这一点。

您可以按数字%10进行模数学运算,然后将数字除以10(数字/ 10),直到得到0得到数字的所有数字。对各个数字求和,直到求和> 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>

答案 1 :(得分:1)

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;
}

答案 2 :(得分:0)

以下是两个提示:(i % 10)给出i的最低有效十进制数字,而i /= 10删除i中的最低有效数字。其余部分留给读者练习。

相关问题