为什么我的迭代计数从2开始而不是1?

2024-09-28 21:25:37 发布

您现在位置:Python中文网/ 问答频道 /正文

我必须写一个程序,显示总的付款数量和总金额支付的抵押贷款。这个问题假设在头12个月每月额外增加1000美元。在342个月内,答案为929965.62美元。在343个月内,我得到的产出是929965.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

Tags: 代码程序principalnumberratepaymentextratotal
1条回答
网友
1楼 · 发布于 2024-09-28 21:25:37

第一个例子是在print之后增加payment_number;第二个样本是相反的。改变

payment_number += 1
print(payment_number, round(total_paid, 2))

print(payment_number, round(total_paid, 2))
payment_number += 1

相关问题 更多 >