이 문제에는 표준 입력으로 두 개의 정수 n과 m이 주어집니다.
별(*) 문자를 이용해 가로의 길이가 n, 세로의 길이가 m인 직사각형 형태를 출력해보세요.
입력
5 3
출력
*****
*****
*****
process.stdin.setEncoding('utf8');
process.stdin.on('data', data => {
const n = data.split(" ");
const a = Number(n[0]), b = Number(n[1]);
let result = "";
for (let i = 0 ; i < b ; i++) {
for (let j = 0 ; j < a ; j++) {
result += "*";
}
result += "\n";
}
console.log(result);
});
기본 코드에서 가로 세로를 이미 변수로 주어서 변수의 크기만큼 가로로는 별을 세로로는 개행을 하는 이중 for문을 통해 쉽게 해결할 수 있던 문제였다. 다른 사람들의 풀이를 보니 repeat()
메서드를 이용하여 좀더 단순화 시킬 수 있음을 알았다.
String.prototype.repeat()
메서드는 문자열을 주어진 횟수만큼 반복해 붙인 새로운 문자열을 반환하는데 자주 사용할 수 있을것 같아 꼭 기억해 놔야겠다.