这些说明有什么问题? 打印出1到20之间的数字。 规则: 对于可被3整除的数字,请打印出“Fizz”。 对于可被5整除的数字,请打印出“Buzz”。 对于可被3和5整除的数字,请在控制台中打印出“FizzBuzz”。 否则,只需打印出数字。
for (var i = 1; i < 21; i++) {
if (i % 3) {
console.log("Fizz");
}
if (i % 5) {
console.log("Buzz");
}
if ((i % 3) && (i % 5)) {
console.log("FizzBuzz");
} else {
console.log(i);
}
}
答案 0 :(得分:2)
else if
时,数字可被3整除。此外,您需要了解number % 3 == 0
并考虑您的条件顺序。这就是解决这个问题所需要的一切。
向您展示解决方案无助于您学习编程。
答案 1 :(得分:1)
您似乎正在尝试这样做:
librrary(ggplot2)
df <- data.frame(gp = factor(rep(letters[1:3], each = 10)),
y = rnorm(30))
plot.to.be.saved <- ggplot(df) + geom_point(aes(x = gp, y = y))
sink('/dev/null')
ggsave(filename = '~/.so.pdf', plot = plot.to.be.saved)
sink()
# Saving 7 x 7 in image
options(warn=-1)
no.output.please <- ggsave(filename = '~/.so.pdf', plot = plot.to.be.saved)
# Saving 7 x 7 in image
capture.output(ggsave(filename = '~/.so.pdf', plot = plot.to.be.saved), file = 'NUL')
# Saving 7 x 7 in image
考虑这个条件应该是第一个:
for (var i = 1; i < 21; i++) {
if ((i % 3) === 0 && (i % 5) === 0) {
console.log("FizzBuzz");
}
else if (i % 3 === 0) {
console.log("Fizz");
}
else if (i % 5 === 0) {
console.log("Buzz");
}
else {
console.log(i);
}
}
否则,对于15号
,它会工作错误答案 2 :(得分:0)
%
运算符返回值不是布尔值,而是除法运算的其余部分。所以你需要检查余数是否为0。
for (var i = 1; i < 21; i++) {
if ((i % 3) == 0) {
console.log("Fizz");
}
if ((i % 5) == 0) {
console.log("Buzz");
}
if (((i % 3) == 0) && ((i % 5) == 0)) {
console.log("FizzBuzz");
} else {
console.log(i);
}
}
答案 3 :(得分:0)
%运算符返回余数,所以如果我们这样做:
myDiv.textContent='';
结果为0 - 因为3是9的平方根...你的if条件是否检查非零结果。
你应该这样做:9 % 3
检查返回0。
另外,考虑在代码中使用sme if (! (i % 3))
和正确的嵌套,你会没事的。
答案 4 :(得分:0)
您不会检查该号码是否可被3或5整除。你在检查它是否属实。
这就是你应该做的事情:
func1()
mod函数“%”返回余数。如果没有剩余部分,那就是一个干净的部门。所以你想确保结果为0.
答案 5 :(得分:0)
i % x
会返回i / x
的剩余部分,因此您需要检查== 0
。
此外,您应首先检查i % 3 == 0 && i % 5 == 0
并使用else if
,否则您的所有语句都将一直执行,无论之前的语句是否已经存在。
for (var i = 1; i < 21; i++) {
if ((i % 3 == 0) && (i % 5 == 0)) {
console.log("FizzBuzz");
} else if (i % 3 == 0) {
console.log("Fizz");
} else if (i % 5 == 0) {
console.log("Buzz");
} else {
console.log(i);
}
}