【发布时间】:2019-03-27 06:08:55
【问题描述】:
我有一个用于计算 collatz 猜想的递归函数。该代码产生正确的数字,它基于计数器递归调用自身。一旦计数器用完,它应该返回正确的数字 - 但它返回None。
def collatz_con(x, revs):
print("start")
print(x, revs)
if (x%2 == 0) and (revs != 0):
print("even and revs =" + str(revs))
holder = x//2
print(holder)
collatz_con(holder, revs - 1)
elif (revs != 0):
print("odd and revs =" + str(revs))
holder = ((3*x) + 1)
print(holder)
collatz_con(holder, revs -1)
else:
print("else exercised")
return x
print(collatz_con(1071, 14))
是否应该返回并打印出x 变量?
【问题讨论】: