seyOrd

导航

python的递归例子_byseyOrd

阶乘n!

def fact(n):
    if n==1:
        return 1
    return n * fact(n - 1)

阶乘1!+2!+3!+4!+5!+...+n!

def fact(n):
    if n == 1:
        return 1
    return n * fact(n-1)

n = int(input())
sum = 0
for i in range(1,n+1):
  sum = sum + fact(i)
print(sum)        

 

递归的注意点

1)递归深度不能太深,容易栈溢出,因为一个函数就占一层栈帧

2)递归要有结束条件,不然会栈溢出

posted on 2020-04-12 16:07  seyOrd  阅读(164)  评论(0)    收藏  举报