所以我有這個程式來計算戴夫在抵押貸款期限內必須支付的總金額:
# mortgage.py
principal = 500000.0
rate = 0.05
payment = 2684.11
total_paid = 0.0
while principal > 0:
principal = principal * (1 rate/12) - payment
total_paid = total_paid payment
print('Total paid', total_paid)
后來練習問我假設戴夫為抵押貸款的前 12 個月每月額外支付 1000 美元?
修改程式以包含此額外付款,并列印支付的總金額以及所需的月數。我可以修改什么來更改程式?我搞不清楚了
uj5u.com熱心網友回復:
這里需要再次詢問用戶“Dave 是否額外支付了本金?” 如果是,則為更新的主體 update_principal = principal dave_paid_extra 創建新變數,然后使用相同的方程重新運行代碼。
uj5u.com熱心網友回復:
principal=500000.0
rate= 0.0
payment = 2684.11
total_paid = 0.0
extra_payment = 1000.0
num_periods = 0
while principal > 0:
if num_periods < 12:
principal = principal * (1 rate/12) - (payment extra_payment)
total_paid = payment extra_payment
else:
principal = principal * (1 rate/12) - (payment)
total_paid = payment
num_periods = 1
print('Total paid: $', total_paid)
支付總額 = 929965.6199999959,但本金 = -1973.205724763917
您多付了最后一筆款項,記得在 'total_paid' 中加上'principal' 以獲得實際金額:927992.414275232
此外,數字不會四舍五入到小數點后兩位,您可以使用以下方法四舍五入:
def twoDecimalPlaces(answer):
return("%.2f" % answer)
twoDecimalPlaces(927992.414275232)
>>> 927992.41
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/346137.html
