백준알고리즘 2753번

2020. 7. 16. 22:37코드의 집/백준알고리즘

 

다음은 if문을 활용하여 윤년을 구하는 문제입니다.

윤년을 구하는 방식은 아래와 같습니다.

 

그레고리력의 정확한 윤년 규칙은 다음과 같다.

  1. 서력 기원 연수가 4로 나누어 떨어지는 해는 윤년으로 한다.
  2. 서력 기원 연수가 4, 100으로 나누어 떨어지는 해는 평년으로 한다.
  3. 서력 기원 연수가 4, 100, 400으로 나누어 떨어지는 해는 윤년으로 둔다.

[출처] : https://ko.wikipedia.org/wiki/%EC%9C%A4%EB%85%84

 

따라서 정수 year을 선언한 후 scanf로 년도를 입력받아 if문을 활용하여

year가 400으로 나누어 떨어질 경우에는 윤년이고

year가 4로 나누어 떨어질 경우에도 윤년입니다.

단 year가 4와 100 *동시에 나누어 떨어질 경우는 평년 이므로

(year%4==0 && year%100!=0) 의 조건을 만족해야합니다.

따라서 코드는 다음과 같습니다.

 

 

 

#include <stdio.h>

int main(){
   int year;
   scanf("%d", &year);

   if(year%400==0 || (year%4==0 && year%100!=0))
      printf("1");
   else
      printf("0");
  
   return 0;

'코드의 집 > 백준알고리즘' 카테고리의 다른 글

백준알고리즘 2739번  (0) 2020.07.19
백준알고리즘 2884번  (0) 2020.07.17
백준알고리즘 1330번  (0) 2020.07.15
백준알고리즘 2588번  (0) 2020.07.15
백준알고리즘 1008번  (0) 2020.07.13