我对python相当陌生,我试图用它来制作一个程序来找出Stern-Brocot序列的第n项(你可以查一下,这就是我的函数被称为SBSeq的原因)。由于某种原因,它不起作用,并且会出现错误,如下所示:
File "C:/Python27/Factorials.py", line 6, in SBSeq
return ((n%2)*SBSeq(ceil(n/2)-1))+SBSeq(ceil(n/2))
最终到了这个:
File "C:/Python27/Factorials.py", line 5, in SBSeq
if n == 1: return 1
RuntimeError: maximum recursion depth exceeded in cmp
这是原始代码。
import math
from math import ceil
def SBSeq(n):
if n == 1: return 1
return ((n%2)*SBSeq(ceil(n/2)-1))+SBSeq(ceil(n/2))
任何帮助,将不胜感激!