Python 실습 | 윤년/평년 구하기

2025. 1. 20. 16:30·Python
  • 선행 커맨드
import seaborn as sns
import pandas as pd

문제 1.  

윤년이면 True, 윤년이 아니면 False를 출력하는 코드를 작성하세요

  • 4로 나누어떨어지는 해는 윤년으로 한다. (2016년, 2020년, 2024년 등등)
  • 4와 100으로 나누어떨어지는 해는 평년으로 한다. (1900년, 2100년, 2200년)
  • 4, 100, 400으로 나누어떨어지는 해는 윤년으로 한다. (2000년, 2400년)

Skeleton Code

year = int(input("연도를 입력하세요: "))

"""
코드 입력
"""

💡 문제 풀이 

`내 풀이`

year = int(input("연도를 입력하세요: "))

if year % 400 == 0 :
    print(True)
elif year % 100 == 0 :
    print(False)
elif year % 4 == 0 :
    print(True)
else :
    print(False)

`처음 풀이(오답)`

year = int(input("연도를 입력하세요: "))

if (year%4 ==0) & (year%100 ==0) & (year%400 ==0):
    print(True)
elif (year%4 ==0) & (year%100 ==0):
    print(False)
elif (year%4 ==0):
    print(True)

#else를 안 씀!

`오답노트`

  • else 조건을 안 넣어서 조건에 없는 값은 False인지 True인지 나오지 않았음!
  • 문장으로 적힌 모든 조건을 그대로 &를 이용해서 수식으로 표현했는데 문제를 제대로 이해하면 좀 더 간단하게 쓸 수 있었음

`더 간결한 풀이`

year = int(input("Enter a year: "))

# 4로 나누어떨어지고, 100으로 나누어 떨어지지 않으면 윤년 또는 400으로 나누어 떨어지면 윤년
if (year % 4 == 0 and year % 100 != 0) or (year % 400 == 0):
  print(True)
else:
  print(False)

`또 다른 풀이`

#연아님 코드
year = int(input("연도를 입력하세요: "))

def solution(year):
    if (year % 4 == 0 and year % 100 != 0) or (year % 400 == 0): 
        return True
    else: 
        return False
    
solution(year)
  • 함수를 정의해서 구할 수도 있다!

잘 구해진다

'Python' 카테고리의 다른 글
  • 머신러닝 공부 | 선형회귀분석
  • Python 실습 | penguins 데이터셋에서 평균보다 작은 데이터 선택하고(transform), 새로운 열 추가해서 조건에 따라 다른 값 넣기 (lambda)
  • Python 실습 | 공공데이터포털 오픈API를 파이썬에 연결하는 방법
  • 통계 실습 | 파이썬으로 중심극한정리(CLT) - 각 분포의 표본의 평균 시각화
초담
초담
4년차 마케터입니다
  • 초담
    그로스마케터의 기록
    초담
  • 전체
    오늘
    어제
  • 글쓰기 관리
    • 분류 전체보기 (117)
      • Data Analytics Project (3)
      • SQL (55)
      • Python (43)
      • GA4 (0)
      • Tableau (8)
      • 아티클 스터디 (7)
  • 인기 글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.2
초담
Python 실습 | 윤년/평년 구하기
상단으로

티스토리툴바