我正在解决这个项目我正在工作的问题。我的问题是,在我的显示列表的末尾,我得到一个负数,所以我想知道是否有人可以给我任何方向来解决这个问题?我需要它为零。
InitalPrice = float(input("Enter the Price of the Computer: "))
Month = 0
DownPayment = InitalPrice * .10
Balance = (InitalPrice - DownPayment)
AnInterest = Balance * .01 / 12
MonthlyPayment = Balance * 0.05
print("%0s%20s%20s%20s%13s%23s" %("Month", "Current Balance", "Interest
Owed", "Principal Owed", "Payment", "Balance Remaining"))
for i in range(1, 100):
#AnInterest = AnInterest
if Balance >= 0:
InitalPrice = InitalPrice - InitalPrice * .10
Principal = MonthlyPayment - AnInterest
Balance = Balance + AnInterest - MonthlyPayment
print("%0d%20.2f%20.3f%20.2f%13.2f%23.2f" %(i, InitalPrice, AnInterest, Principal, MonthlyPayment, Balance))
答案 0 :(得分:0)
您将减去常数金额作为MonthlyPayment(即余额的10%)。如果余额加上利息小于那个MonthlyPayment那么余额变为负数。你只需要做一个简单的检查,看看情况并非如此。
P.S。我建议只使用while循环来解决这个问题,因为for循环可以迭代太多次,也可能没有多次。