Python/파이썬 기초 강의(2024)★

파이썬: 윤년 구하기

코딩ABC 2024. 10. 1. 10:05
반응형

윤년은 1년이 366일로 이루어진 해를 말하며, 4년마다 한 번씩 발생합니다. 일반적인 해(평년)는 365일이지만, 윤년은 2월달이 29일로 1년은 366일입니다. 윤년을 추가하는 이유는 태양의 공전주기가 정확히 365일이 아니기 때문입니다. 실제로는 약 365.2422일 정도로, 매년 약 0.24일씩 차이가 쌓이기 때문에 4년마다 하루를 더해 그 차이를 보정합니다.

윤년 규칙

윤년이 되는 해는 다음의 조건을 만족해야 합니다:

  1. 연도가 4로 나누어 떨어져야 한다 (예: 2020년, 2024년).
  2. 단, 100으로 나누어 떨어지는 해는 윤년이 아니다 (예: 1900년, 2100년은 윤년이 아님).
  3. 그러나 400으로 나누어 떨어지는 해는 다시 윤년이다 (예: 1600년, 2000년은 윤년).

예시

  • 2020년: 4로 나누어 떨어지므로 윤년.
  • 1900년: 100으로 나누어 떨어지지만 400으로 나누어떨어지지 않으므로 평년.
  • 2000년: 400으로 나누어 떨어지므로 윤년.

윤년을 사용하는 이유

윤년은 달력상의 날짜와 실제 지구의 공전 주기 사이의 차이를 맞추기 위해 도입되었습니다. 지구가 태양을 한 바퀴 도는 데 걸리는 시간은 365일보다 약간 더 길기 때문에, 이를 보정하지 않으면 시간이 지나면서 달력과 계절이 맞지 않게 됩니다.

 

파이썬에서 윤년을 구하는 코드는 다음과 같습니다.

if (year % 4 == 0 and year % 100 != 0) or (year % 400 == 0):
    #윤년, 1년: 366일
else:
    #평년, 1년: 365일

 

다음 코드는 년도를 입력받아서 윤년인지를 판단하는 파이썬 코드입니다.

def is_leap_year(year):
    if (year % 4 == 0 and year % 100 != 0) or (year % 400 == 0):
        return True
    else:
        return False

year = int(input("연도를 입력하세요: "))
if is_leap_year(year):
    print(f"{year}년은 윤년입니다.")
else:
    print(f"{year}년은 윤년이 아닙니다.")

파이썬: 윤년 구하기

 

반응형