본문 바로가기
프로그램/Python 1000제

Python 46제] 생일이 윤년인지 아닌지와 오늘날짜를 기준으로 생일이 지났는지 안지났는지를 구하는 프로그램

by 건티 2022. 4. 6.
728x90

출처 : 반크_독도포스터

 

문제]

윤년은 1년을 366일로 하는 해를 말한다. 

 

오늘 날짜를 4자리(MMDD)로 입력하고, 이름을 입력받아 그 이름의 생일을 8자리(YYYYMMDD)로 입력받은 후, 생일이 윤년(leap year)인지 평년(common year)인지와 어떤 계절인지, 그리고 올해의 생일이 지났는지 지나지 않았는지 출력하시오.
(4로 나누어 떨어지는 해는 윤년이나, 100으로 나누어 떨어지는 해는 평년, 그중에서도 400으로 나누어지는 수는 윤년이다. 계절은 spring은 3,4,5월, summer은 6,7,8, fall은 9,10,11월, winter은 12,1,2월로 한다.) 

[입력 예시1]
오늘 날짜를 입력하시오(MMDD) : 1004

이름을 입력하세요 : 홍길동
홍길동님 생일을 입력하세요(YYYYMMDD) : 20020207

[출력 예시1]

홍길동님!
Your birthday is common year.
You were born in winter.
Your birthday has already passed.

[입력 예시2]
오늘 날짜를 입력하시오(MMDD) : 0427

이름을 입력하세요 : 홍길순
홍길동님 생일을 입력하세요(YYYYMMDD) : 19990427


[출력 예시2]

홍길순님!
Your birthday is common year.
You were born in spring.
Congratulation! Today is your birthday.

[입력 예시3]
오늘 날짜를 입력하시오(MMDD) : 1001

이름을 입력하세요 : 방대한
홍길동님 생일을 입력하세요(YYYYMMDD) : 00001225


[출력 예시3]

방대한님!
Your birthday is leap year.
You were born in winter.
Your birthday has not passed yet.

 

참고풀이]

#오늘날짜를 4자리(MMDD)로 입력받는다.
today = input("오늘 날짜를 입력하시오(MMDD) : ")
#이름을 입력받는다.
Name=input("이름을 입력하세요 : ")
#생일(YYYYMMDD)을 입력받는다.
birthday = input(Name+"님 생일을 입력하세요(YYYYMMDD) : ")

#생일이 윤년인지 평년인지 출력한다.
year = int(birthday[0:4])
month = int(birthday[4:6])
day = int(birthday[6:])

print("\n"+Name+"님!")
if (year % 4 == 0 and year % 100 != 0) or year % 400 == 0:
    print("Your birthday is leap year.")
else:
    print("Your birthday is common year.")

#태어난 계절을 출력한다.
if 3 <= month <= 5:
    print("You were born in spring.")
elif 6 <= month <= 8:
    print("You were born in summer.")
elif 9 <= month <= 11:
    print("You were born in fall.")
else:
    print("You were born in winter.")

#올해의 생일이 지났는지 지나지 않았는지 출력한다.
birth = int(birthday[4:])
if birth < int(today):
    print("Your birthday has already passed.")
elif birth == int(today):
    print("Congratulation! Today is your birthday.")
else:
    print("Your birthday has not passed yet.")

 

 

참고풀이 결과]

 

 

 

 

대한민국의 아름다운 영토, 독도의 가을

 

반응형

댓글