这是我的代码。
iBal = int(input('Enter your initial balance: '))
aPer = int(input('Enter an annual interest percentage: '))
fBal = int(input('Enter your desired final balance: '))
sum1 = iBal*(1 + aPer/100)
while sum1 < fBal:
print(format(sum1, '.2f'))
sum1 = iBal*(1+aPer/100)
iBal = sum1
print(format(iBal, '.2f'))
这是用户输入返回的内容(iBal = 500,aPer = 4,fBal = 550)
>>>520.00
>>>520.00
>>>540.80
>>>562.43
我需要第一个520.00是500.00(输入原始的初始余额),有人看到我的错误吗?非常感谢。
答案 0 :(得分:0)
您可以以更简单的方式执行此操作(您的代码也很好并且也正确):
sum1 = iBal
while sum1 < fBal:
print(format(sum1, '.2f'))
sum1 = sum1 * (1 + aPer / 100.0)
print(format(sum1, '.2f'))
上述方法更具可读性,但如果您希望它更简洁,则只能使用iBal
而非sum1
:
while iBal < fBal:
print(format(iBal, '.2f'))
iBal = iBal * (1 + aPer / 100.0)
print(format(iBal, '.2f'))
答案 1 :(得分:0)
在第一种情况下,你不能得到500作为输出,因为在计算之前你没有打印出初始余额iBal。