반응형
SMALL

되게 재밌는 문제기도 해서 올려본다. 택이가 우승상금으로 5천만원을 받았는데 동일이아저씨는 이걸 은행에다 넣으면 1년에 이자가 0.12%가 붙어 5600만원이 되고 6200만원이 된다고 했고 이런식으로 년마다 증가하게 되고 미란아주머니는 생돈을 왜 은행에다 넣어놓느냐고 5천만원짜리 아파트를 사라고 했다. 그럼 두가지 조건중에 택이한테는 더 이득이 될까? 2016년 기준으로 5천만원짜리 아파트는 11억이 되었다.


일단 이문제를 풀라면 이자 계산하는 방법을 알아야 한다. 이자가 0.12% 증가한댔으니 1+0.12를 해주면 쉽게 해결될 문제기도 하다. 조건문을 공부하기 위한 문제였는데 이자율 계산과 변수명 값 설정 때문에 10분정도 고민을 해봤던 것 같다. 코드는 다음과 같다.


INTER_RATE = 0.12
APARTMENT_PRICE = 1100000000
year = 1988
money = 50000000
count = 0
while year < 2016:

money = money * (1 + INTER_RATE)
year = year + 1

if APARTMENT_PRICE < money:
count = money - APARTMENT_PRICE
print("%d원 차이로 건주의 말씀이 맞습니다." % (count))
if APARTMENT_PRICE > money:
count = money - APARTMENT_PRICE
print("%d원 차이로 미란아주머니의 말씀이 맞습니다." % (count))

생각보다 몇줄 안되는 코드이다. 변수명값 설정이 좀 오래 걸려서 그렇지 while, if문 구현하는 방법은 어렵지 않다.

그냥 어떤게 이득인지 아닌지만 잘 구별하면 쉽게 풀 수 있는 문제다. 결과값은 다음과 같다.



이런식으로 나오면 결과가 잘 나온거다. 결국은 은행에다 넣어놓아야 한다고 주장한 내말이 맞은 셈이다.

저 코드 말고 이렇게 짜는 방식도 있다.


# 상수 정의
INTEREST_RATE = 12
APARTMENT_PRICE = 1100000000

# 변수 정의
year = 1988
amount = 50000000

while year < 2016:
amount = amount + INTEREST_RATE / 100 * amount
year = year + 1

if amount > APARTMENT_PRICE:
print("%d원 차이로 건주의 말씀이 맞습니다." % (amount - APARTMENT_PRICE))
elif amount < APARTMENT_PRICE:
print("%d원 차이로 미란아주머니의 말씀이 맞습니다." % (APARTMENT_PRICE - amount))
else:
print("똑같습니다.")

이것도 동일한 결과가 나오는데 elif를 사용해서 조금 더 간결하고 이쁘게 짠 정석코드이다. 프로그래밍은 한가지

방법만 있는게 아닌 여러가지로 짜는법이 있으니 많이 연습해 두면 좋을 것 같다.


반응형
LIST

'프로그래밍언어 > PYTHON' 카테고리의 다른 글

구구단 프로그램  (0) 2017.07.12
숫자맞추기 프로그램  (0) 2017.07.12
피보나치 수열 프로그램  (0) 2017.07.11
학점계산기 프로그램  (0) 2017.07.10
짝수,홀수 구분하기 프로그램  (0) 2017.07.10
블로그 이미지

만년필석사

,