我被困在学校里。在给定高度和宽度的情况下,我们必须创建一个创建网格的函数,并使用给定的值填充所有内容。我几乎有解决方案,但仍然有一个测试用例出错,我似乎无法理解为什么。 Here are the test cases.
function createGrid(width, height, value) {
var x = new Array(width);
for (var i = 0; i < width; i++) {
x[i] = new Array(height);
}
for (i = 0; i < height; i++) {
for (j = 0; j < width; j++) {
x[i][j] = value;
}
}
return x;
}
答案 0 :(得分:0)
您可能希望检查变量的一致性。尝试使用'h'和'w'而不是'i'和'j',我想你会看到问题。
答案 1 :(得分:0)
在第三个循环中,您错放了索引。而不是x [i] [j],应该有x [j] [i]。
答案 2 :(得分:0)
您似乎在打印数据时出错了。您无法在插入值的同一循环中打印它们。你必须运行一个不同的循环。
我已将它们作为表格打印在代码段中。通过单击按钮,它将打印(4,7,0)。您可以通过更改按钮的html来检查其他值。
function createGrid(width, height, value) {
var x = new Array(width);
for (var i = 0; i < width; i++) {
x[i] = new Array(height);
}
for (var k = 0; k < width; k++) {
for (var j = 0; j < height; j++) {
x[k][j] = value;
}
}
//printing the data
var innerTable = " ";
for (k=0;k<height;k++){
innerTable += "<tr>";
for (j = 0; j < width; j++){
innerTable += "<td>"+x[j][k]+"</td>";
}
innerTable += "</tr>";
}
document.getElementById("toPrint").innerHTML = innerTable;
}
&#13;
<button onclick="createGrid(4,7,0)">ClickMe</button>
<table id="toPrint">
</table>
&#13;