Notice
Recent Posts
Recent Comments
Link
관리 메뉴

윤일무이

[JavaScript] 프로그래머스 코딩테스트 입문 : 직각삼각형 출력하기 본문

⚙️ 코딩테스트

[JavaScript] 프로그래머스 코딩테스트 입문 : 직각삼각형 출력하기

썸머몽 2023. 3. 25. 14:20
728x90

문제 및 제한사항

 

"*" 높이와 너비를 1이라고 했을 , "*" 이용해 직각 이등변 삼각형을 그리려고합니다. 정수 n 주어지면 높이와 너비가 n 직각 이등변 삼각형을 출력하도록 코드를 작성해보세요.

 

**제한사항**

1 ≤ n ≤ 10

 

풀이 방법

 

들어가자마자 백준마냥 readline모듈이 있어서 문제가 잘못됐나 바보 같은 생각을 했다. 

사담인데 백준에서 JS를 풀려면 fs든 readline이든 모듈이 필요한 걸로 알고 있어 어려워보여 프로그래머스로 온 건데,

여기서 이렇게 만나니 어떻게든 해야했군 하고 이참에 readline모듈 쓰는 법에 대해서도 알아봤다.

 

각설하고 모듈 이해만 하면 코드 자체는 쉽게 짤 수 있다.

 

주어진 숫자가 3이라면

*

**

***

이렇게 높이, 너비가 3인 직각삼각형을 출력하면 된다.

for문을 1부터 돌려서 1개 출력, 다음 줄에 2개 출력, 그 다음줄에 3개를 출력하면 된다.

 

단 readline모듈을 이해하면 input이 문자열로 들어온다는 것을 알 수 있는데, 이 부분을 정수화 해주어야 한다.

문자열 * 정수의 경우 NaN이 떠서 이렇게는 안되고, 대신 문자열을 원하는 정수만큼 반복해주는 repeat()을 쓰는 게 킥이다.

 

코드

const readline = require('readline');
const rl = readline.createInterface({
    input: process.stdin,
    output: process.stdout
});

rl.on('line', function (line) {
    input = line;
}).on('close', function () {
    let inputNum = Number(input);
    for (let i = 1; i <= inputNum; i++) {
        console.log('*'.repeat(i))
    }
});
728x90