如何修复while循环?

时间:2016-05-12 02:32:44

标签: javascript while-loop

function div(num) {
  while (num <= 9) {
    var a = (num - (num % 10));
    var b = (a / 10)
    var c = 0
    var digits = num.toString().split("")
    for (i = digits.length - 1; i > 2; i--) {
      c = digits[i]
    }
    num = b - (c * 2);
  }

  return num;
}
document.write(div(1234))

我的代码应该取数字并得到最后一位数字并从数字的其余部分中减去它,然后重复这个过程,直到答案小于或等于9.我做了一个循环,但我继续得到我开始的号码。有什么问题,我该如何解决?

编辑:

应该将最后一位数乘以2,然后从数字的其余部分中减去它,然后重复该过程,直到答案小于或等于9

2 个答案:

答案 0 :(得分:2)

while (num<=9)

这应该是

while (num>=9)

答案 1 :(得分:0)

截至目前,while循环仅针对小于9的数字执行。

使用while(num >= 9)代替while(num <= 9)

function div(num) {
  while (num >= 9) {
    var a = (num - (num % 10));
    var b = (a / 10)
    var c = 0
    var digits = num.toString().split("")
    for (i = digits.length - 1; i > 2; i--) {
      c = digits[i]
    }
    num = b - (c * 2);
  }

  return num;
}
document.write(div(1234));