新的JavaScript程序员在这里。我试图找出一个实践问题,但不知道我的代码出错了。JavaScript 100门
问题:您连续有100扇门都是最初关闭的。你在门口做了100次传球。第一次通过时,您访问每扇门并切换门(如果门关闭,打开它;如果它打开,则关闭它)。第二次你只访问每个第二个门(门#2,#4,#6,...)。第三次,每3门(3号门,#6号,#9号门)等,直到你只访问第100门。
问题:最后一次通过之后门的状态是什么?哪些是封闭的?
编辑 对于这是不是一个功课问题......我想教自己的Javascript的记录,我发现从这里的问题是:http://rosettacode.org/wiki/100_doors
我的代码:
var doors = [];
for (var i = 0; i < 100; i++) {
doors[i] = "Closed";
}
for (var j = 1; j <= 100; j++) { // j is what you're dividing by
for (var k = 0; k < 100; k++) { //0 is the first door b/c of arrays
if (doors[k] % j === 0) {
toggle(k);
}
else {}
}
}
for (var counter = 0; counter < 100; counter++) {
console.log("Door " + (counter + 1) + " is " + doors[counter]);
}
function toggle(value) {
if (doors[value] === "Open") {
doors[value] = "Closed";
}
else {
doors[value] = "Open";
}
}
你看到了什么问题? – RJM
这听起来像一个家庭作业的问题... – Yatrix
哈哈我不在学校;试图教自己的JavaScript。问题是,他们都报告关闭。 –