我必须编写一个程序,显示抵押的总付款额和总金额。该问题假定在前12个月每月额外支付$ 1000。答案是在342个月内达到929,965.62美元。在343个月内,我得到的输出为$ 929,965.62。问题是我的代码从2开始计数,但是第一个数字正确。
principal = 500000.0
rate = 0.05
payment = 2684.11
total_paid = 0.0
extra_payment = 1000
payment_number = 1
while principal > 0 and payment_number <=12:
principal = principal * (1+rate/12) - (payment + extra_payment)
total_paid = total_paid + (payment + extra_payment)
payment_number += 1
print(payment_number, round(total_paid, 2))
else:
while principal > 0:
principal = principal * (1+rate/12) - payment
total_paid = total_paid + payment
payment_number += 1
print(payment_number, round(total_paid, 2))
我不明白为什么上面的代码从2开始,下面的代码从1开始计数。
height = 100
bounce = 1
while bounce <= 10:
height = height * (3/5)
print(bounce, round(height, 4))
bounce += 1
答案 0 :(得分:0)
第一个示例是您print
之后,您增加了payment_number
;第二个样本则相反。更改
payment_number += 1
print(payment_number, round(total_paid, 2))
到
print(payment_number, round(total_paid, 2))
payment_number += 1