# mortgage.py
#
# Exercise 1.7

principal = 500000.0
rate = 0.05
payment = 2684.11

num_payments = 0

extra_payment_start_month = 5*12 + 1
extra_payment_end_month = extra_payment_start_month + 4*12
extra_payment = 1000


total_paid = 0.0

while principal > 0:
    num_payments += 1
    if (num_payments >= extra_payment_start_month) and \
       (num_payments <= extra_payment_end_month):
        extra_payment1 = extra_payment
    else:
        extra_payment1 = 0

    if ( payment + extra_payment1 > principal):
        total_paid = total_paid + principal
        break
    else:
        principal = principal * (1+rate/12) - payment - extra_payment1
        total_paid = total_paid + payment + extra_payment1

print("# payments = ", num_payments, 'Total paid', total_paid)
