虽然循环:我的程序旨在显示具有用户输入的银行帐户的增长

时间:2014-03-31 22:24:40

标签: python-3.x

  1. 这是我的代码。

    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'))
    
  2. 这是用户输入返回的内容(iBal = 500,aPer = 4,fBal = 550)

    >>>520.00
    >>>520.00
    >>>540.80
    >>>562.43
    
  3. 我需要第一个520.00是500.00(输入原始的初始余额),有人看到我的错误吗?非常感谢。

2 个答案:

答案 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。