본문 바로가기
ALGORITHM/백준 With Node.js

[백준] 2438번 / 별 찍기 - 1 / Node.js

by LAY CODER 2021. 4. 21.
728x90

문제

 

첫째 줄에는 별 1개, 둘째 줄에는 별 2개, N번째 줄에는 별 N개를 찍는 문제

 

 

입력

 

첫째 줄에 N(1 ≤ N ≤ 100)이 주어진다.

 

 

출력

 

첫째 줄부터 N번째 줄까지 차례대로 별을 출력한다.

 

 

예제 입력 1

 

5

 

예제 출력 1

 

*

**

***

****

*****

 

CODE

const readline = require('readline');

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

rl.on('line', function (line) {
    // 1번 ==============================================================

    const num = +line;
    let star = '';

    for (let i = 1; i <= num; i++) {
        star += '*';
        console.log(star);
    }

    // =================================================================

    // 2번 ==============================================================

    const num = +line;

    let star = new Array(num);

    for (let i = 0; i < star.length; i++) {
        star[i] = '*';
        console.log(star.join(''));
    }

    // =================================================================

    rl.close();
}).on('close', function () {
    process.exit();
});

 

Comment

 

1번처럼 빈 문자열을 만들고 하나씩 추가하며 찍어주는 방법이 있고,

 

2번처럼 빈 Array를 만들어서 하나씩 넣어준 다음에 join()을 이용하여 출력하는 방법이 있다.

 

 

아래는 Array.join() 참고

 

3. Array.join() / Array.fill() / Array.split()

Array.prototype.join() 배열의 모든 요소를 연결해 하나의 문자열로 만드는 method. const elements = ['Fire', 'Air', 'Water']; console.log(elements.join()); // expected output: "Fire,Air,Water" console...

laycoder.tistory.com

 

References


gurtn.tistory.com/33

 

 

 

댓글