函数的递归
上一节
下一节
函数的递归
函数定义中调用函数自身的方式形成递归。
数学上的一个经典递归例子叫阶乘。 n!= n(n-1)(n-2)...(1), 也就是0!为1, 1!=1*0!, 2!=2*1!,....
斐波那契数 f(n)= f(n-1) + f(n-2) , f(1)为1, f(2) 为1.
例1. 阶乘的计算
def fact(n):
if n == 0 :
return 1
else:
return n* fact(n-1)
num = eval( input(" Enter an integer: ")
print(fact( abs(int(num)))) # 调用函数,获取值并输出
例2. 求第10个的斐波那契数
def fibo(n):
if n==1 :
return 1
elif n==2:
return 1
else:
return fibo(n-1)+ fibo(n-2)
#调用函数
print(fibo(10))

