직사각형 별찍기 - 프로그래머스 / JavaScript

temp·2022년 9월 24일
0

알고리즘

목록 보기
1/30

process.stdin.setEncoding('utf8');
process.stdin.on('data', data => {
    const n = data.split(" ");
    const a = Number(n[0]), b = Number(n[1]);
    for (let i = 0; i < b; i++) {
        let rectangle = '';
        for (let j = 0; j < a; j++) {
            rectangle += '*';    
        }
        console.log(rectangle);    
    }    
});

파라미터 안에 'data'를 문자열로 입력 받으면,
data.split(" "); 을 통해 띄어쓰기를 기준으로 나누어서 배열로 만든다!
그 배열 n의 0번 인덱스가 가로의 길이 a, 배열 n의 1번 인덱스가 세로의 길이 b가 된다.
(이 때 인덱싱한 값은 문자열이므로 Number()를 통해 정수로 변환할 것!)

이제 for 반복문의 중첩을 통해 먼저 '*'를 가로의 길이만큼 만들고, 그 후 세로의 길이 수만큼 출력하도록 만든다.

  • *를 가로의 길이(a)만큼 만들어주려면,
for (let j = 0; j < a; j++) {
	let rectangle += '*';
}
console.log(rectangle);		
위에서 만약 a = 5라면 출력결과는  ***** 가 될 것이다.*****세로길이(b) 만큼 출력해주기!

for (let i = 0; i < b; i++) {
  for (let j = 0; j < a; j++) {
	let rectangle += '*';
  }
  console.log(rectangle);	
}  
profile
공부한 내용 정리중...

0개의 댓글

관련 채용 정보