본문 바로가기
Develop/백준 (Cpp)

[백준] 2753번: 윤년 (C++)

by Tarra 2022. 4. 10.

2753번: 윤년


문제 )

연도가 주어졌을 때, 윤년이면 1, 아니면 0을 출력하는 프로그램을 작성하시오.

윤년은 연도가 4의 배수이면서, 100의 배수가 아닐 때 또는 400의 배수일 때이다.

예를 들어, 2012년은 4의 배수이면서 100의 배수가 아니라서 윤년이다. 1900년은 100의 배수이고 400의 배수는 아니기 때문에 윤년이 아니다. 하지만, 2000년은 400의 배수이기 때문에 윤년이다.

 

입력 :

첫째 줄에 연도가 주어진다. 연도는 1보다 크거나 같고, 4000보다 작거나 같은 자연수이다.

 

 

출력 :

첫째 줄에 윤년이면 1, 아니면 0을 출력한다.

 

 

 

 

풀이)

 

cpp 에서 and 연산자는 and를 그대로 사용해주어도 되지만 , &&을 더 많이 사용하며,

 

마찬가지로 or 연산자도 or도 사용가능하고, ||로도 사용한다.

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
# include <iostream>
using namespace std;
 
int main(){
 
    int a;
    cin >> a;
 
    if (a % 4 == 0 && (a % 100 != 0 || a % 400 == 0)){
        cout << "1" << endl;
    }
    else{
        cout << 0 << endl;
    }
    
    return 0;
}
cs
 

출처 : https://www.acmicpc.net/problem/2753

 

2753번: 윤년

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

www.acmicpc.net