프로그래머스 (JS)/Lv. 0

[Programmers] 120907번 - OX퀴즈

hodo- 2023. 3. 11. 11:59

Problem

문제 보기

덧셈, 뺄셈 수식들이 'X [연산자] Y = Z' 형태로 들어있는 문자열 배열 quiz가 매개변수로 주어집니다. 수식이 옳다면 "O"를 틀리다면 "X"를 순서대로 담은 배열을 return하도록 solution 함수를 완성해주세요.


Solution

function solution(quiz) {
    let answer = [];
    let q = [];
    let result = 0;
    
    for(let i = 0; i < quiz.length; i++){
        q = quiz[i].split(' ');
        if(q[1] === '-'){
            result = Number(q[0]) - Number(q[2]);
        } else result = Number(q[0]) + Number(q[2]);
        
        if(result === Number(q[4])) answer.push("O");
        else answer.push("X");
    }
    return answer;
}

1. 매개변수 quiz를 공백기준으로 나눠준다 ("3 + 3 = 6" -> ['3', '+', '3', '=', '6']
2. 연산자를 기준으로 q[1] === '-'이면 빼주고 아니라면 더해주도록 했다.
3. 2번의 결과가 q[4]와 같다면 return O, 아니라면 return X