Python:为a*b编写函数mult(a,b),仅添加/sub/负,测试递归错误(-a,b)



到目前为止我有这个-但是如果我用(-a, b)测试,python会给我一个递归错误。请帮忙,不知道为什么这不起作用。所有其他测试都在这里工作。

def mult(a, b):
""" mult returns the product of two inputs
    inputs: n and m are integers
    output: result of multiplying n and m
""" 
    if b < 0:
       return -mult(a,-b)
    elif b == 0:
       return 0
    elif b == 1:
       return a
    else:
       return a + mult(a,b-1)

谢谢你。

Python对递归的数量有限制。你可能只是撞上了它。请看下面的答案:

Python的最大递归深度是多少,如何增加它?

最新更新