This question already has answers here:
FizBuzz program: how to make the output correct?
(4个答案)
5年前关闭。
我正在学习js
您能告诉我代码是否适合以下任务...
我可以打印foo和bar
但无法打印foobar
http://jsfiddle.net/1u1o2es7/
那正是你想要的。
(4个答案)
5年前关闭。
我正在学习js
您能告诉我代码是否适合以下任务...
我可以打印foo和bar
但无法打印foobar
http://jsfiddle.net/1u1o2es7/
// Looping from 1 to 100 print out the following
// If the number is divisible by 3, log X foo
// if the number is divisible by 5, log X bar
// If the number is divisible by 15, log X foobar
// Only one output per number
// Expected output:
//
// 1
// 2
// 3 foo
// 4
// 5 bar
// 6 foo
// ...
// 15 foobar
// ...
// 100 bar
for(i=1; i<=100; i++){
console.log(i);
//var str = "";
if(i%3 == 0) {
//str = "foo";
console.log("foo");
}
else if(i%5 == 0) {
console.log("bar");
}
else if(i%3 == 0 && i%5 == 0) {
console.log("foobar");
}
}
最佳答案
您在15时仅获得“ foo”的原因是因为if (15%3 == 0)
的计算结果为true,并且您没有遇到任何其他情况。
如果有的话,将else if(i%3 == 0 && i%5 == 0)
移到顶部。
for(i=1; i<=100; i++){
console.log(i);
if(i%3 == 0 && i%5 == 0) {
console.log("foobar");
}
else if(i%5 == 0) {
console.log("bar");
}
else if(i%3 == 0) {
console.log("foo");
}
}
那正是你想要的。
10-02 12:37