def choose (x, y):
if y > x:
print ("False")
elif y == 0 or y == x:
return 1
elif y == 1:
return x
else:
if (x-y) > y:
biggest = x-y
smallest = y
else:
biggest = y
smallest = x-y
resultatet = x * choose (x-1, biggest)
res = resultatet // smallest
return res
我的功能與任何X輸入我插入但更大的Y輸入像8000例如我越來越的兩個數字蟒教師3
File "/home/nazel607/labb3b_2.py", line 20, in choose
resultatet = x * choose (x-1, biggest)
File "/home/nazel607/labb3b_2.py", line 3, in choose
if y > x:
RuntimeError: maximum recursion depth exceeded in comparison
完美的工作有沒有一種方法可以讓我克服這個問題還是因爲Python的限制而無法實現?除了增加限制還有另一種方法嗎?
嗨。你有興趣找到一種不同的方法來計算這個值嗎?或者你想知道如何實現這個特定的算法,而不會遇到這種限制? – jwg
@jwg嗨,我更感興趣的是找到一種方法來使用這個特定的算法,並克服了限制的問題 –
你見過[this](https://stackoverflow.com/questions/8177073/python-maximum-recursion -depth-超標)? – RolfBly