3. 사용자에게 태어난 연도를 입력받아 띠를 출력하는 프로그램을 작성해 주세요. 작성 시 입력을 받은 연도를 12로 나눈 나머지를 사용합니다.
나머지가 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11일 때 각각 원숭이, 닭, 개, 돼지, 쥐, 소, 범, 토끼, 용, 뱀, 말, 양띠 입니다.
가장 단순한 형태이지 않을까 싶네요. 단점으로 보면 if문 구문안에 계산로직이 각각 들어가 있는 형태입니다. 만약에 계산로직이 변경되는 경우라면
12개의 if구문을 바꿔줘야되는 경우가 생깁니다. 그래서 아래의 형태로 구문을 좀더 압축할 수 있습니다.
실행결과는 아래와 같습니다.
참고로 검증을 위해서 네이버에 검색해서 띠별년도에 해당하는 내역을 검색해보았습니다.
해당조건을 만족하는 로직을 작성한경우 반듯이 실제값이 제대로 동작하는지 확인하는게 중요합니다. 특히 실무에서는요 ^^
파이썬의 if 구문 정리
파이썬의 공부하면서 느끼는건 자바랑 자바스크립트 기타 언어를 먼저 다뤄본 입장에서는 차이점이 다소 존재합니다.
if 기본형
if 조건 :
조건이 참일때 실행됨
else :
조건이 거짓일때 실행됨
if구문 괄호랑 ':' 쓰는부분이 좀다른데 아직까지는 좀 적응이 안되네요 ^^ 빨리 익숙해졌으면 좋겠습니다.
elif 구문
if 조건A :
A조건이 참일때 실행됨
elif 조건B :
B조건이 참일때 실행됨
elif 조건C:
C조건이 참일때 실행됨
......
else :
모든조건에 해당되지 않을때 실행됨
if elif 패턴으로 조건을 실행할경우 해당조건이 참인경우 해당조건 아래로는 조건구문을 검사하지 않고 구문수행이 끝나버립니다.
3.번 출력 결과를 보면 2016년 을입력한경우 나머지가 0인경우이므로 원숭이띠를 출력하고 프로그램실행이 종료됩니다.
해당예제를 아래와 같이 if구문을 변경해보고 실행을 하면 좀더 명확하게 알 수 있습니다.
원숭이 조건을 if 구문으로 변경하여 5개정도 바꿔주고 실행후 2016년 을 입력해서 결과 값을 확인해봅니다.
여기서 기존소스를 아래와 같이 변경해보고 다시 실행해보겠습니다. 구문 형태를 if elif 패턴으로 다시 바꾸고 같은조건으로 5개 동일하게 줍니다.
그리고 실행을 해봅니다.
실행해보면 젤 첫번째 if조건이 수행되고 프로그램은 종료됨을 알 수 있습니다.
실무에서 사용할때 종종 실수를 할 수 있는 부분이기도 해서 한번 내용을 추가해봤습니다.
if elif 구문 패턴을 쓰는경우도 있지만 if구문을 연속적으로 걸어서 처리하는 경우도 많이쓰입니다.
그럼 이상 과제를 마치겠습니다. ^^
#혼공단 #혼공파