본문 바로가기
C#/프로그래머스

[프로그래머스] C# : 짝수와 홀수

by TODAYCODE 2021. 7. 28.
반응형

프로그래머스 코딩테스트 연습 Level 1 - 짝수와 홀수

 

코딩테스트 연습 - 짝수와 홀수

정수 num이 짝수일 경우 "Even"을 반환하고 홀수인 경우 "Odd"를 반환하는 함수, solution을 완성해주세요. 제한 조건 num은 int 범위의 정수입니다. 0은 짝수입니다. 입출력 예 num return 3 "Odd" 4 "Even"

programmers.co.kr

문제의 핵심

1. % 연산 기호를 사용할 수 있는가?

2. C#에서 조건연산자(?)를 사용할 수 있는가?

 


이번 문제는 가장 쉬운 난이도의 문제가 아닌가 생각이 든다.

코딩을 배웠다면,

강의나 책에서 무조건 등장해서 알 수 밖에 없는

짝수와 홀수를 구분하는 문제이다.

% 연산자로 2로 나눠서 확인하면 되는 아주 간단한 문제이다.

 

 

일단 기본적인 풀이부터 확인한 뒤

C#으로 한줄 코딩으로 풀어버리는 법을 알아보도록 하자.

 

정답 코드 기본 버전

public class Solution {
    public string solution(int num) {
        string answer = "";
        if(num%2==0)
            answer+="Even";
        else
            answer+="Odd";
        return answer;
    }
}

 

C#에서는 조건연산자라는 것이 존재한다.

이는 ?를 사용하는 연산자이다.

자세한 내용은 이전 포스팅을 참고하자.

 

C# : 조건 연산자

입력 방식 조건식 ? 참의 값 : 거짓의 값 int a = 30; string result = a == 30 ? "삼십" : "삼십아님"; == : 조건식 "삼십" : 참의 값 "삼십아님" : 거짓의 값 using System; namespace ConditionalOperator { cl..

coding-of-today.tistory.com

아무튼

조건식 ? 참일때의 값 : 거짓일때의 값

위와 같은 방식으로 사용하면 된다.

한마디로,

(num % 2 == 0) ? "Even" : "Odd"

이렇게 한다면,

2로 나눠떨어지면 Even

그렇지 않으면 Odd를 리턴하게 될 것이다.

 

 

 

정답 코드 짧은 버전

public class Solution {
    public string solution(int num) {
    // 결과값이 참이면 Even / 거짓이면 Odd를 리턴해라
        return (num % 2 == 0) ? "Even" : "Odd";
    }
}

 

 

 

 

반응형

댓글