[구름톤 챌린지] 합 계산기 (JS)

hhkim·2023년 8월 16일
0

Algorithm - JavaScript

목록 보기
103/188
post-thumbnail

풀이 과정

  1. T + 1까지 입력받기
  2. 1부터 input 길이까지 반복
  3. 각 라인을 연산자와 피연산자로 구분: split(), Number()
  4. 연산자에 따라 연산 수행: switch

코드

const readline = require('readline');
let rl = readline.createInterface({
  input: process.stdin,
  output: process.stdout,
});
let input = [];
rl.on('line', (line) => {
  input.push(line.trim());
  if (input.length === Number(input[0]) + 1) {
    rl.close();
  }
});

rl.on('close', () => {
  const T = Number(input[0]);
  let result = 0;
  for (let i = 1; i < input.length; ++i) {
    let [num1, op, num2] = input[i].split(' ');
    [num1, num2] = [Number(num1), Number(num2)];
    switch (op) {
      case '+':
        result += num1 + num2;
        break;
      case '-':
        result += num1 - num2;
        break;
      case '*':
        result += num1 * num2;
        break;
      case '/':
        result += Math.trunc(num1 / num2);
        break;
      default:
        throw new Error('유효하지 않은 연산자');
    }
  }
  console.log(result);
});

🦾

간단한 계산기 만들기 문제라서 어려운 부분은 없었다.
매번 변수를 const로 할당하는 버릇 때문에 처음에 테스트 몇 번 통과 못하긴 했지만 ㅋㅋㅋ 쓰기 전에 다시 한 번 생각하기~~

0개의 댓글