ezhoon

[백준] 2753_Java 본문

[Java] 백준 문제풀이/if문

[백준] 2753_Java

ezhoon 2022. 1. 3. 20:44

백준 2753

 

2753번: 윤년

연도가 주어졌을 때, 윤년이면 1, 아니면 0을 출력하는 프로그램을 작성하시오. 윤년은 연도가 4의 배수이면서, 100의 배수가 아닐 때 또는 400의 배수일 때이다. 예를 들어, 2012년은 4의 배수이면서

www.acmicpc.net

 

 

주의할 점

  • 4의 배수이면서, 400의 배수이지만 100의 배수는 아닌 것

 

문제풀이


import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class if_2753 {
    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));

        int year = Integer.parseInt(br.readLine());

        System.out.println((year % 4 == 0)?((year % 400 ==0) ? "1" :(year%100 ==0) ? "0" : "1"):"0");

        /*if((year % 4 == 0) && (year % 100 !=0) || (year % 400 == 0)){
            System.out.println("1");
        }else{
            System.out.println("0");
        }*/

    }
}

위 코드는 삼항 연산자로 보기에는 좀 까다롭다고 생각이 들어 if문으로도 만들어뒀다.

 

개인적으로 3개 이상의 조건을 보는거면 If문을 나눠서쓰거나 if문 한 곳에 몰아서 두는게 삼항연산자 보다 보기 좋은 것 같다.

'[Java] 백준 문제풀이 > if문' 카테고리의 다른 글

[백준] 2884_Java  (0) 2022.01.03
[백준] 14681_Java  (0) 2022.01.03
[백준] 9498_Java  (0) 2022.01.03
[백준] 1330_Java  (0) 2022.01.03
Comments