이 문제에는 표준 입력으로 두 개의 정수 n과 m이 주어집니다. 별(*) 문자를 이용해 가로의 길이가 n, 세로의 길이가 m인 직사각형 형태를 출력해보세요.
입력
5 3
출력
// 입력받은 숫자를 'data'에 받음
process.stdin.setEncoding("utf8");
process.stdin.on("data", (data) => {
const n = data.split(" ");
// data(입력받은 숫자)를 배열로 변경한다.
const a = Number(n[0]),
b = Number(n[1]);
// a는 한줄에 별의 갯수, b는 몇줄을 출력할 것인지
// 입력 값 b(3) 만큼 반복문을 돌린다.
for (let i = 0; i < b; i++) {
// stars 변수를 초기화 해준다.
let stars = "";
// 위 for문이 한번 돌아갈 때 마다 입력 값 a(5) 만큼 반복문을 돌린다.
for (let j = 0; j < a; j++) {
// stars = stars + "*"
stars += "*";
}
// 콘솔창에 현재까지 저장된 stars 값을 찍는다. (*****)
console.log(stars);
// i가 b(3) 보다 작을 경우 맨 위로가 다시 for문을 실행한다.
}
});
별찍기는 대표적인 프로그래밍 문제 중 하나로 변수, 제어문을 이해하는 데 좋은 문제이다
보편적으로는 중첩 for문을 이용해 풀 수 있고, 자바스크립트의 경우 repeat() 메서드-MDN을 통해서도 풀 수 있지만 가장 보편적인 방법으로 풀어보았다.