Python代碼:
""" i = 998 時,正常 i = 999 時,報錯:maximum recursion depth exceeded in comparison 由此可知Python遞歸默認深度為 998 如果超過998,則最大遞歸深度至少+2 """ import sys def fact(n): if n==1: return 1 return n + fact(n - 1) i = 999 sys.setrecursionlimit(i+2) #設置最大遞歸深度,如果注釋該行代碼則執行報錯 s = fact(i) print("\r\n1-%s的整數之和是:%s" % (i,s))
輸出結果:
E:\python\algorithm>python3 recursive.py 1-999的整數之和是:499500 E:\python\algorithm>
=====結束=====