• Operator(연산자)

    2021. 4. 28.

    by. 와트

    증감 연산자: ++, --

    논리 부정 연산자: !

    산술 연산자: +, -, *, /, %

    비교 연산자: ==, !=

    논리 연산자: &&, ||

    복합 대입 연산자: +=, -=, *=, /, %=

    삼항 연산자: 조건식 ? 식1: 식2 (중첩 사용도 가능)

    ※문제. 정수 2개를 입력 받아 삼항 연산자를 이용하여 "두 수 모두 홀수이다", "두 수 모두 짝수이다", 또는 "하나는 홀수이고 하나는 짝수이다"를 판별하여 출력하시오.

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
        public void method2() {
            
            Scanner sc = new Scanner(System.in);
            System.out.println("첫번째 정수 입력 : ");
            int num1 = sc.nextInt();
            System.out.println("두번째 정수 입력 : ");
            int num2 = sc.nextInt();
                   
            String result = (num1 % 2 ==0&& (num2 % 2 ==0) ? "두 수 모두 짝수이다":
                            (num1 % 2 ==0|| (num2 % 2 ==0) ? "하나는 홀수이고 하나는 짝수이다" : "두 수 모두 홀수이다";
            
            System.out.println(result);
        }
    cs

    Scanner를 통해 정수 2개를 입력받은 후 삼항 연산자를 통해 세 가지 경우의 수를 출력하는 문제.

    모듈러 연산을 사용하는 것은 동일한데, 나는 이렇게 풀었다.

     

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
        public void method2() {
            
            Scanner sc = new Scanner(System.in);
            System.out.println("첫번째 정수 입력 : ");
            int num1 = sc.nextInt();
            System.out.println("두번째 정수 입력 : ");
            int num2 = sc.nextInt();
            
            String result = num1%2 + num2%2 > 1"두 수 모두 홀수이다"
                            num1%2 + num2%2 > 0"하나는 홀수이고 하나는 짝수이다" : "두 수 모두 짝수이다";
            
            
            System.out.println(result);
        }
    cs

    num1의 나머지와 num2의 나머지를 더했을 때, 결괏값이 2면 두 수 모두 홀수, 1이면 하나만 홀수, 0이면 모두 짝수.

    &&이나 ||를 사용하는 것이 다른 사람이 봤을 때 더 직관적으로 보이긴 한다.

    내가 보고 이해가는 것보단 모두가 보기 쉬운 코드가 좋은 코드라는 생각이 든다.

    '혼자 있는 방 > Java' 카테고리의 다른 글

    Repetitive(반복문) 2  (0) 2021.05.02
    Repetitive(반복문) 1  (0) 2021.04.30
    Conditional(조건문)  (0) 2021.04.30
    변수(Variable)  (0) 2021.04.24
    Java 독학 시작  (0) 2021.04.24

    댓글

Designed by Nana