짝수와 홀수(Javascript)

·2022년 9월 12일
0
post-thumbnail

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

제한 조건

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

입출력 예

numreturn
3"Odd"
4"Even"

나의 풀이

처음에는

function solution(num){
	var answer = num % 2 ===1? "Odd" : "Even";
	return answer;
}

으로 써줬다. 삼항 연산자를 이용하면 if 조건을 짧게 써줄 수 있다. 조건식 ? A(true) : B(false)으로 써 주며, 조건이 참이면 A, 거짓이면 B를 써 준다.
삼항 연산자의 조건을 여러 개 쓸 때는

조건식? A
: 조건식? B
: 조건식? C
: D

이런 식으로 사용이 가능하다.

num이 정수이고 0은 짝수 취급한다는 조건 때문에 Math.abs()를 써줬다. 괄호 안에 값을 넣어주면 절대값이 인출된다.

그리고 확실히 하기 위해서 0일때는 짝수라는 조건도 써 줬다. 빼고 실행도 해 봤는데 빼도 실행이 잘 된다.

function solution(num) {
    var answer = 
     Math.abs(num) % 2 === 1? "Odd"// 절댓값/2의 나머지가 1이면 "Odd" 출력
    : num = 0? "Even"//0일때 "Even" 출력, 생략 가능
    : "Even";//나머지 경우에 "Even" 출력.
    return answer;
}

참고할 풀이

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

문제가 바뀌기 전의 풀이인듯 하다. 하지만 이 부분은 참고할 만 해서 가져왔다. 나는 조건을 num % 2 === 1 ? "Odd" : "Even"; 이런 식으로 줬는데 나머지가 0과 1만 나오는 것을 이용하여 ===값을 생략해 줬다. 짝수라면 나머지가 0이니까 false와 같다. 따라서 "Even"을 출력해주고, 홀수라면 나머지가 1이라서 true와 같다. 따라서 "Odd"를 출력해 준다.

profile
전 이것도 몰라요

0개의 댓글

관련 채용 정보