백준 - 알고리즘
백준 (JAVA) - 윤년 (2753)
정리하고기록하자
2021. 10. 11. 22:44
반응형
백준 - 알고리즘 if문 윤년 (2753) 문제
문제 :
연도가 주어졌을 때, 윤년이면 1, 아니면 0을 출력하는 프로그램을 작성하시오.
윤년은 연도가 4의 배수이면서, 100의 배수가 아닐 때 또는 400의 배수일 때이다.
예를 들어,
2012년은 4의 배수이면서 100의 배수가 아니라서 윤년이다.
1900년은 100의 배수이고 400의 배수는 아니기 때문에 윤년이 아니다.
하지만, 2000년은 400의 배수이기 때문에 윤년이다.
import java.util.*;
public class Main {
public static void main(String[] args){
Scanner sc = new Scanner(System.in);
int a = sc.nextInt();
if( a % 4 == 0) {
if( a % 400 == 0) {
System.out.println("1");
} else if( a % 100 == 0 ){
System.out.println("0");
} else {
System.out.println("1");
}
} else {
System.out.println("0");
}
}
}
위에 문제에
윤년의 연도는 4 배수 이기 때문에 4로 나누었을때 0으로 떨어져야 한다.
0으로 떨어질때는 0으로 출력해야 한다.
0으로 떨어지지 않았을때는 1로 출력해야 한다.
if( a % 4 == 0) {
System.out.println("1");
else {
System.out.println("0");
}
1900년은 100의 배수이고
400의 배수는 아니기 때문에 윤년이 아니다.
하지만, 2000년은 400의 배수이기 때문에 윤년이다.
if( a % 400 == 0) {
System.out.println("1");
} else if( a % 100 == 0 ){
System.out.println("0");
} else {
System.out.println("1");
}
조건에 맞춰 if 문을 추가 했다.
반응형