7.2.3 실습: 수수료 부과하기
이번에는 은행의 업무 시간이 아닐 때 출금해 보겠습니다. 보통 업무 시간 외에 출금하면 수수료를 지불하니 수수료를 100원이라고 정합니다. 코드를 간단하게 짜기 위해 함수 안에서 금액을 비교하는 부분을 제외하고, 항상 잔액보다는 적은 금액을 출금한다고 하겠습니다. 그리고 출금 후 잔액뿐 아니라 수수료도 얼마인지 확인할 수 있게 잔액과 수수료를 함께 반환합니다.
def open_account(): # 계좌 개설 함수
print("새로운 계좌를 개설합니다.")
open_account() # open_account() 함수 호출
def deposit(balance, money): # 입금 처리 함수
print("{0}원을 입금했습니다. 잔액은 {1}원입니다.".format(money, balance + money))
return balance + money # 입금 후 잔액 반환
def withdraw_night(balance, money): # 업무 시간 외 출금
commission = 100 # 출금 수수료 100원
print("업무 시간 외에 {}원을 출금했습니다.".format(money))
return commission, balance - money - commission
balance = 0 # 초기 잔액
balance = deposit(balance, 1000) # 1,000원 입금
# 업무 시간 외 출금 시도
commission, balance = withdraw_night(balance, 500)
print("수수료 {0}원이며, 잔액은 {1}원입니다.".format(commission, balance))
실행결과 |
새로운 계좌를 개설합니다. 1000원을 입금했습니다. 잔액은 1000원입니다. 업무 시간 외에 500원을 출금했습니다. 수수료 100원이며, 잔액은 400원입니다. |