0

我正在上一门计算机科学课程,任务是设计一个没有用户输入的退休计划器。我设计了一个有效的程序:

def main():

    calcFinalBalance(age=30,rate=6,savings=3000)

def calcFinalBalance(age,rate,savings):
    balance = 0
    while age < 70:
        balance += savings
        balance = balance + (balance * ((rate)/100))
        age += 1

    print('$' + format(balance, ',.2f'))
main()

计算 $492,143.05

但这不是作业的正确格式。

我需要打印('$' + format(calcFinalBalance(30,6,3000), '.2f')) 来计算我的答案,我需要返回值。我想我需要在我的 while 语句之后返回余额,我的问题是我无法弄清楚如何在不执行上述操作的情况下将值传递给我的参数。我不断收到未定义的参数,如果有人能指出我正确的方向,将不胜感激。

4

2 回答 2

0

不知道这对你有没有帮助?它应该用“$”符号打印您的余额。您可以使用可以在网上找到的正确代码更改货币。

>>> import babel.numbers
>>> import decimal
>>> babel.numbers.format_currency( decimal.Decimal( balance, "USD" )
于 2012-05-22T09:25:34.667 回答
0

我不完全确定问题是什么,但calcFinalBalance(age=30,rate=6,savings=3000)相当于calcFinalBalance(30,6,3000)- 它应该也能正常工作。您可以想象用 30 代替年龄,用 6 代替利率,用 3000 代替储蓄。

format(calcFinalBalance(30,6,3000), '.2f'))调用表明calcFinalBalance应该返回一个浮点数,我认为如果你只是balance从返回calcFinalBalance(现在你正在打印它,从而返回None)应该这样做

于 2012-05-19T22:55:08.163 回答