Ming's develop story

알고리즘 - 직사각형 별찍기 feat. JavaScript표준입력 (21.11.08) 본문

스파르타코딩클럽 - 항해99/항해99 Chapter2 - 알고리즘 기초

알고리즘 - 직사각형 별찍기 feat. JavaScript표준입력 (21.11.08)

Ming 2021. 11. 8. 19:00
  • 직사각형 별찍기

문제 설명

이 문제에는 표준 입력으로 두 개의 정수 n과 m이 주어집니다.
별(*) 문자를 이용해 가로의 길이가 n, 세로의 길이가 m인 직사각형 형태를 출력해보세요.


제한 조건

  • n과 m은 각각 1000 이하인 자연수입니다.

예시

입력

5 3

출력

*****

*****

*****

 

 

-----------------------------------------------------------------------------------------------------------------------------------

내 풀이

process.stdin.setEncoding('utf8');
process.stdin.on('data', data => {
    const n = data.split(" ");
    const a = Number(n[0]), b = Number(n[1]);
});

-자바스크립트 표준입력-

위의 부분이 처음부터 쓰여있었는데 저게 뭔지를 몰라서 너무 헤맸다... 아직도 왜 저렇게 쓰는지 완벽히 이해가 간건 아니지만 찾아보니 그냥 저게 표준입력식이구나 하고 넘어가면 되는듯 했다. 

 

 

const a = Number(n[0])은 행이 될 것이고, b= Number(n[1])는 열이 될 것이다.

1. 변수x에 빈 공간을 정해줌으로써 *로 직사각형을 그릴수 있게된다.

 

2. for 반복문 사용 - 안쪽의 for문은 가로(행)의 별을 그려준다.

                          바깥쪽의 for문은 안쪽의 for문으로 생긴 가로(행)의 별들을 반복되는 만큼 세로(열)로 반복해 준다.

 

x += "\n" 을 사용하였는데 여기서 \n은 줄바꿈을 의미한다!

 

 

 

 

 

 

다른 사람의 풀이를 참고하니 repeat() 메서드를 활용하여 간단하게 코드를 구현하였다.

repeat() 메서드는 문자열을 주어진 횟수만큼 반복해 붙인 새로운 문자열을 반환합니다.

Comments