模数和余数 - Javascript

时间:2012-08-21 06:15:02

标签: javascript modulus

对不起,这么短的时间内的两个问题大声笑 为什么1%15,3%15,5%15有0余数? 我可能在数学上生气,但我认为他们应该留下余数。

可能没必要,但这里是代码:

for (i = 1; i <= 20; i++) {
    if (i % 15 === 0) {
        console.log("FizzBuzz");
    }
    else if (i % 3 === 0) {
        console.log("Fizz");
    }
    else if (i % 5 === 0) {
        console.log("Buzz");
    }
    else {
        console.log(i);
    }
}

并输出:

**FizzBuzz** 
2
**FizzBuzz** 
4
**FizzBuzz**
Fizz 
7 
8 
Fizz 
Buzz 
11 
Fizz 
13 
14 
FizzBuzz 
16 
17 
Fizz 
19 
Buzz

2 个答案:

答案 0 :(得分:2)

您推测,JavaScript表达式1%153%155%15分别评估为1,3和5。

您提出的问题似乎与您的代码发布无关,您使用的是15%ii%3等等。

另一方面,15%115%315%5 都评估为零。

答案 1 :(得分:0)

因为你没有要求1%15,3%15,5%15 ......你要求15%1,15%3,15%5。 :)

为了澄清,这应该可以得到你想要的结果。

for(i = 1; i <= 20; i++) {
   if(i%15 === 0) { 
      console.log("FizzBuzz"); 
   } else if(i%3 === 0) { 
      console.log("Fizz"); 
   } else if(i%5 === 0) { 
      console.log("Buzz"); 
   } else { 
      console.log(i); 
   }
}

输出:

1
2
Fizz
4
Buzz
Fizz
7
8
Fizz
Buzz
11
Fizz
13
14
FizzBuzz
16
17
Fizz
19
Buzz