嘿,我对编程相当陌生,我有一个挑战,我就是不能完全理解。我需要计算出一个人用设定的利率和付款率还清信贷计划需要多长时间。这段代码有两个部分我似乎无法理解。第一个是如何在endingBalance等于0时停止while循环。因为我不能在while条件下使用endingBalance,所以我不确定如何停止它,所以我只添加了一个24的占位符。我面临的另一个问题是如何让结束平衡不再陷入消极。我想我需要做一个if声明,当起始平衡小于原则时,原则等于起始平衡,但在这一点上我不确定如何做到这一点。我只需要在这两个问题上得到一些帮助,任何帮助都将不胜感激
DOWN_PAYMENT_RATE = 0.1
INTEREST_RATE = 0.12
PAYMENT_RATE = 0.05
balance = price - (price * DOWN_PAYMENT_RATE)
payment = balance * PAYMENT_RATE
print("%0s%18s%13s%13s%12s%16s" % \
("Month", "Starting Balance", "Interest", "Principle", "Payment", "Ending Balance"))
count = 1
while count != 24:
interest = balance * INTEREST_RATE / 12
principle = payment - interest
endingBalance = balance - principle
print("%2d%14.2f%18.2f%13.2f%12.2f%12.2f" % \
(count, balance, interest, principle, payment, endingBalance))
balance = endingBalance
if balance > principle:
principle = principle
else:
principle = balance
count += 1
您可以先用任意随机+ve整数在循环时声明'endingBalance',因为它不会产生任何影响。 因为在while循环中,无论其初始值如何,它都会发生变化
正如其他人已经说过的,您必须更改while循环。此外,如果您不希望期末余额为负数,则应在
principle = payment - interest
行中添加机会您只需更新
while
循环中的条件,如下所示:在
while
循环中使用上述条件时,循环将只执行到endingBalance
为>0
且永远不会为负值相关问题 更多 >
编程相关推荐