프로그래머스 제일 쉽다던 문제
처음 하는 나한테는 안쉬웠다.
문제
주어진 정수 num이 짝수일 경우 "Even"을 반환하고 홀수인 경우 "Odd"를 반환하는 함수, solution을 완성해주세요.
입출력 예
내 풀이
나머지 연산자인 "%"만 알고 있으면 금방 풀 수 있는 문제였다. 정수를 2로 나눈 나머지가 0일 경우 짝수이고, 0이 아닐 경우 홀수이다.
function solution(num) {
var answer = ''; //변수 선언
if (num % 2 === 0) { // 홀짝 확인 조건
return answer = 'Even' // 짝일 때 리턴값
} else {
return answer = 'Odd' // 홀일 때 리턴값
}
return answer;
}
이런식으로 이해를 했다.
고수들의 문제풀이
삼항연산자를 사용 하여 코드를 더 간결하게 만들어 준다.
조건문 ? trun : false
이렇게 쓸 수 있다.
function solution(num) {
return (num % 2 === 0? "Odd":"Even") // 조건문 ? true : false
}
// num을 2로 나눈 나머지가 0이면(true) Even을 반환하고, 그렇지 않으면(false) Odd를 반환해라.
이 블로그 포스팅 하면서 삼항연산자 구문이 반대도 되는지 궁금해 Odd와 Even 위치를 바꿔 제출했는데 정답처리가 됐다.
자바스크립트 0 = False 생각하고 위에 식으로 했는데 조건이 맞아도 되는걸 지금 깨달았다.!