본문 바로가기
IT/프로그래머스

[JavaScript/자바스크립트] 프로그래머스 Level.0 - a와 b 출력하기

by hatnim 2025. 2. 14.
반응형

☁️ 문제 설명

정수 a, b가 주어집니다. 각 수를 입력받아 입출력 예와 같은 형식으로 출력하는 코드를 작성해 보세요.

https://school.programmers.co.kr/learn/courses/30/lessons/181951

☁️ 제한사항

  • -100,000 ≤ a, b ≤ 100,000

☁️ 입출력 예

입력 #1

4 5

 

출력 #1

a = 4
b = 5

 


☁️ solution.js 1번

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

let input = [];

rl.on('line', function (line) {
    input = line.split(' ');
}).on('close', function () {
    console.log(`a = ${Number(input[0])}\nb = ${Number(input[1])}`);
});

설명:

  1. line.split(' ') → 입력값을 공백 기준으로 나눠서 배열 input에 저장.
  2. 배열을 사용하지만 불필요하게 저장 후 꺼내서 쓰는 방식이라 코드가 길어짐.

🚨주의

console.log(`a = ${Number(input[0])}\nb = ${Number(input[1])}`); 

여기서 a 앞에 있는 건 따옴표인 ' 이게 아니라 백틱 키인 ` ( '~'과 함께 있는 키)를 눌러야 함!!

한글에서는 ₩ 라고 표시될 수 있음.


☁️ solution.js 2번

const readline = require('readline')
const rl = readline.createInterface({
    input: process.stdin,
    output: process.stdout
}).on('line', function (line) {
    const [a, b] = line.split(' ')
    console.log('a =', a)
    console.log('b =', b)
})

설명:

1. 구조 분해 할당 (const [a, b] = line.split(' '))

  • 공백으로 나눈 배열을 변수 a, b에 바로 저장.

2. 더 짧고 직관적: const [a, b] = line.split(' ') 사용으로 코드가 깔끔.

3. Number(a), Number(b)로 변환하지 않으면, 입력된 값이 문자열로 유지됨.
(만약 연산이 필요하면 추가 변환이 필요함.)

☁️ solution.js 2번을 최적화한다면, 

// 입력이 숫자가 아닐 시에
const readline = require('readline')
const rl = readline.createInterface({
    input: process.stdin,
    output: process.stdout
}).on('line', function (line) {
    const [a, b] = line.split(' ').map(Number)  // 숫자로 변환
    console.log(`a = ${a}`)
    console.log(`b = ${b}`)
})

 

 

반응형

댓글