递归函数-值存储和参数定义

问题描述

显示代码后,我得到与orgbalance值相关的在分配错误之前被引用-但是我不明白为什么,我也找不到其他方法来存储我在一些覆盖了该值的递归之后可以重用。

另外,我想知道是否有可能通过使用诸如mMP之类的其他参数在第一行中定义一个参数(例如balance)-这样我总是会出错...

帮助已被确认! -并且不要为我正在学习的python课程的代码感到奇怪;)

def CreditCalc(balance,annualInterestRate,mMP = 10,month =12):
    if mMP == 10 and month == 12:
        orgbalance = balance 

    MonthlyInterestRate = annualInterestRate / 12.0
    MonthlyUnpaidBalance = balance - mMP
    UpdatedBalanceEachMonth = MonthlyUnpaidBalance + MonthlyInterestRate * MonthlyUnpaidBalance
    epsilon = 120   

    while month > 0:
        return CreditCalc(UpdatedBalanceEachMonth,mMP,month- 1)

    if MonthlyUnpaidBalance <= 0 and abs(MonthlyUnpaidBalance) < epsilon:
        return "Lowest Payment: " + str(round(mMP,2))   
    else:
        if MonthlyUnpaidBalance < 0:
            return CreditCalc(orgbalance,mMP = round((balance // 12)/10)*10 - 10,month=12) 
        else:
            return CreditCalc(orgbalance,mMP = round((balance // 12)/10)*10 + 10,month=12)   

print((CreditCalc(3329,0.2)))

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)