如何打印由字母X构造的X,并在TypeScript中使用下划线作为空格



因此问题如下:使用TypeScript编写一个程序,打印由字母X构造的X,并使用下划线作为空格。x的大小基于变量n,该变量将指示要打印的字母的大小(在n x n的矩阵中(。例如,对于n:=5,您得到:

X___X_
_X_X_
__X__
_X_X_
X___X

对于n:=6,我们得到:

X____X_
_X__X_
__XX__
__XX__
_X__X_
X____X

这是我的代码:

var n = 5;
var space = "";
for(var i = 2; i < n; i++){
space = space + "_";
for(var k = 1; k < i * 1; k++){
space = space + "X";
}
console.log(space);
}

输出是:

_X
_X_XX
_X_XX_XXX

检查外循环的索引是否等于内循环的索引,或者外循环的指数是否等于(内循环的指数减去线长度(,以决定正方形是否应该有X:

const makeX = n => {
for (let i = 0; i < n; i++) {
let line = '';
for (let j = 0; j < n; j++) {
line += i === j || j === (n - i - 1) ? 'X' : '_';
}
console.log(line);
}
};
makeX(5);
console.log('');
makeX(6);

let x = 5;
for(let i=0; i<x; i++) {
let str = "";
for(let k=0; k<x; k++) {
if(k==i || k==x-1-i) {
str+='X'
} 
else {
str+='_'
}
if(k==x-1) {
console.log(str)
}
}
}
const X = n => new Array(n).fill(n).forEach(
(_,j,a) => console.log(a.map(
(_,i) => i == j || i == (n-j-1) ? 'X' : '_'
).join(''))
);

相关内容

最新更新