[Programmers Lv.0 | JS] OX퀴즈

Bori·2023년 2월 21일
0

Algorithm

목록 보기
10/26
post-thumbnail

프로그래머스 OX퀴즈 문제 링크

나의 풀이

function solution(quiz) {
    let answer = [];
    for (const q of quiz) {
        const [num1, operator, num2, equl, result] = q.split(' ');
        const calculate = eval(`${num1} ${operator} ${num2}`);
        
        if(calculate === Number(result)) answer.push('O');
        else answer.push('X');
    }
    return answer;
}

문제를 풀면서

  • 연산 기호와 숫자 사이에는 공백이 존재하므로 공백을 기준으로 split을 하여 문자열 배열 생성
  • 문자열을 배열 디스트럭처링하고, eval을 이용하여 문자열 자체로 연산
    ⇒ 연산자가 +, - 이외에 /, *도 존재하는 것으로 이해하여 간단하게 문제를 풀기 위해 eval 함수를 사용
    문제 꼼꼼히 읽기

다른 풀이를 보면서

  • eval을 사용하여 푸는 거라면 공백이 아닌 (공백)=(공백)을 기준으로 split하여 연산하면 코드가 간결해진다.

0개의 댓글