【发布时间】:2013-05-18 04:27:09
【问题描述】:
有人可以为 FizzBuzz 更正我的这段代码吗?似乎有一个小错误。下面的代码打印所有数字,而不是只打印不能被 3 或 5 整除的数字。
编写一个程序,打印从
1到100的数字。但是对于三的倍数,打印"Fizz"而不是数字,对于五的倍数,打印"Buzz"。对于同时是三和五的倍数的数字,打印"FizzBuzz"。
function isDivisible(numa, num) {
if (numa % num == 0) {
return true;
} else {
return false;
}
};
function by3(num) {
if (isDivisible(num, 3)) {
console.log("Fizz");
} else {
return false;
}
};
function by5(num) {
if (isDivisible(num, 5)) {
console.log("Buzz");
} else {
return false;
}
};
for (var a=1; a<=100; a++) {
if (by3(a)) {
by3(a);
if (by5(a)) {
by5(a);
console.log("\n");
} else {
console.log("\n");
}
} else if (by5(a)) {
by5(a);
console.log("\n");
} else {
console.log(a+"\n")
}
}
【问题讨论】:
-
i % 5 == 0不需要变成函数。退后一步,问问自己,“我将如何手动完成这项工作?” -
这是一个常见问题.. 见c2.com/cgi/wiki?FizzBuzzTest
-
是的,@blender 没有调用该函数
-
这里有一个提示:
by3和by5在打印Fizz或Buzz时返回什么? -
哦,我认为它总是给出错误的! @barmar
标签: javascript fizzbuzz