对于一个接受任意整数p和一个非负整数j的递归函数来说,可能的基本情况是什么?当从数字j中重复n次减去11时,该函数应该返回结果。
我在下面做了一些尝试,但不确定它们是否正确。
def subtract(p,j):
if n < 0:
raise ValueError ('Eexpecting non-negative n')
if x == 11 and n == 0:
return 11
while n >= 0:
x = x-11
n-=1
return x发布于 2020-06-12 03:02:22
您发布的函数不是recursive function,而且您也不是。递归函数的定义如下:
递归函数是在执行过程中调用自身的函数。
试试这个:
def sub_eleven(x, n):
return x - n * 11但是,如果您有使用递归实现它的原因,请尝试这样做:
def sub_eleven(x, n):
if n <= 0: # Base Condition
return x
return sub_eleven(x - 11, n - 1) # Calling itself with different arguments/statehttps://stackoverflow.com/questions/62331447
复制相似问题