알고리즘 공부

알고리즘 문제 풀기 (JS입문) - 짝수 홀수

olivejam 2022. 12. 16. 23:40
728x90
SMALL

 

문제

정수 num이 짝수일 경우 "Even"을 반환하고 홀수인 경우 "Odd"를 반환하는 함수, solution을 완성해주세요.

 

  • num은 int 범위의 정수입니다.
  • 0은 짝수입니다.

예시로 3은 "Odd", 4는 "Even"

function solution(num) {
    var answer = '';
    return answer;
}

 

 

내가 푼 답

function solution(num) {
    var answer = '';
    if (num % 2 === 0){
        return "Even"
    } else {
        return "Odd"
    }
    
    return answer;
}

- if문을 사용하여 '만약 num을 2로 나눴을때 나머지가 0이라면' 으로 가정을 하고 

0이라면 "Even"을 반환하고 0이 아니라면 "Odd"를 반환하라고 정했다.

 

문제에서 예시 숫자로 3과 4가 나왔고

3은  나머지가 1이 나와서 홀수 " Odd" 이고

4은 나머지가 0이기 때문에 짝수로 "Even" 나온다.

 

 

 

 

다른 사람이 푼 답

function evenOrOdd(num) {
  return num % 2 ? "Odd" : "Even";
}

console.log("결과 : " + evenOrOdd(2));
console.log("결과 : " + evenOrOdd(3));

위의 답은 삼항연산자를 사용하였다.

 

조건 (삼항) 연산자는 JS에서 세 개의 피연산자를 받는 유일한 연산자이다.

앞에서부터 조건문, 물음표(?), 조건문이 참(truthy)일 경우 실행할 표현식, 콜론(:), 조건문이 거짓(falsy)일 경우 실행할 표현식이 배치된다. 해당 연산자는 if...else문의 대체재로 빈번히 사용된다고 하니 지금부터라고 익혀주면 좋을 듯 쉽다.

 

 

 

    condition ? exprIfTrue : exprIfFalse

 

매개변수

condition      조건문으로 사용되는 표현식
exprIfTrue     condition이 truthy한 값으로 평가될 경우 실행되는 표현식 (true와 같거나, true로 치환될 수 있는 값)
exprIfFalse    condition이 falsy한 값으로 평가될 경우 실행되는 표현식 (false와 같거나, false로 치환될 수 있는 값)

 

설명

false 이외의 falsy한 표현식에는 null, NaN, 0, 비어있는 문자열 (""), 그리고 undefined가 있다. condition이 이 중 하나일 경우 조건 연산자의 결과값은 exprIfFalse 표현식을 실행한 결과값이다.

 

 

참고한 곳 출처 :

 

조건 (삼항) 연산자 - JavaScript | MDN

조건 (삼항) 연산자는 JavaScript에서 세 개의 피연산자를 받는 유일한 연산자입니다. 앞에서부터 조건문, 물음표(?), 조건문이 참(truthy)일 경우 실행할 표현식, 콜론(:), 조건문이 거짓(falsy)일 경우

developer.mozilla.org

 

 

 

 

728x90
LIST