我陷入了所面临的问题。
我尝试过的代码:
function printImage(oddnumbers) {
for (var i = 0; i < oddnumbers; i++) {
var tmp = ''
for (var j = 0; j < oddnumbers; j++) {
if (i % 2 === 0) {
tmp += 'x';
} else {
tmp += '=';
}
}
console.log(tmp);
}
}
printImage(5)
这是结果
xxxxx
=====
xxxxx
=====
xxxxx
我有这样的问题:
具有如下功能打印图像,其参数为图片的长度或宽度。参数必须是奇数。注意:必须使用循环,不要硬编码/直接写
当我运行printImage(5)
时
x===x
=x=x=
==x==
=x=x=
x===x
当我运行printImage(7)
时
x=====x
=x===x=
==x=x==
===x===
==x=x==
=x===x=
x=====x
请帮助我解决此问题
x
,这可以通过在制作行时进行检查来完成:如果行索引(j
)与列索引(i
)相同,请打印x
(因为您位于左上角到右下角),并且如果行索引等于length - 1 - i
,则您位于另一个对角线上。否则,打印=
: function printImage(length) {
for (var i = 0; i < length; i++) {
// Construct a row
var tmp = ''
for (var j = 0; j < length; j++) {
tmp += (j === i || j === (length - 1 - i))
? 'x'
: '=';
}
console.log(tmp);
}
}
printImage(7)