balance = int(100)
balance *= 0.05 + balance
balance *= 0.05 + balance
balance *= 0.05 + balance
print (int(round ( balance, '.2f' )))
我在试着计算三年后100美元的利息是多少。
我最初试过这个
balance = 100
balance *= 0.05 + balance
balance *= 0.05 + balance
balance *= 0.05 + balance
print (format( balance, '.2f' ))
但我的格式导致答案是以万亿为单位,而不是5位浮点数。
发布于 2019-02-22 06:27:39
你在乘以余额。试试这个:
balance = int(100)
balance = balance * 0.05 + balance
balance = balance * 0.05 + balance
balance = balance * 0.05 + balance
print("{:.02f}".format(balance))
发布于 2019-02-22 07:08:25
你应该注意操作的顺序。balance *= 0.05 + balance
会先将0.05
和balance
相加,然后再将其乘以balance
。您需要的是balance = balance + balance * 0.05
或balance = balance * 1.05
。
您可以创建一个函数来计算复利,以使其更简单:
def comp_int(balance, rate, years):
return balance * (1 + rate)**years
balance = 100
rate = 0.05
years = 3
new_bal = comp_int(balance, rate, years)
print(f'{new_bal:.2f}')
https://stackoverflow.com/questions/54817175
复制相似问题