私はPythonにかなり慣れていないので、それを使ってスターン・ブロコット列の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))
どんな助けでも大歓迎です!