以下是代码:
def calculate(*args):
try:
value = float(income.get())
expenses.set("$"+str(value * .60))
longTerm.set("$"+str(value * .10))
vacation.set("$"+str(value * .04))
carDown.set("$"+str(value * .04))
homeDown.set("$"+str(value * .02))
guiltFree.set("$"+str(value * .20))
projection.set("$"+str(value * .10 * 1 + 0.05/4 ** 4*10))
except ValueError:
pass
由于某种原因,我传入100时的输出是$ 100.001953125
我在数学代码的projection.set部分做错了什么?
答案 0 :(得分:1)
我不是100%确定你要做什么,但我想要实现公式
A = P(1+r/m)^mt
你需要
projection.set("$"+str(value * .10 *( 1 + 0.05/4) ** (4*10)))
而不是
projection.set("$"+str(value * .10 * 1 + 0.05/4 ** 4*10))
(记住PEMDAS)