递归
1、递归求和
def get_sum(num):
if num > 0:
res=num+get_sum(num-1)
else:
return 0
return res
a=get_sum(5)
print(a)
输出:15
2、递归求乘积
def fact(n):
if n==1:
return 1
else:
return n * fact(n - 1)
a=fact(5)
print(a)
输出:120
3、尾递归求乘积
def fact_iter(num, product):
if num == 1:
return product
return fact_iter(num - 1, num * product)
b=fact_iter(5,1)
print(b)
输出:120
4、循环求次方
def power(x,y):
s=1
while y>0:
y=y-1
s=s*x
return s
print(power(5,3))
输出:125
5、递归求次方
def digui(a,b):
if b==0:
return 1
else:
return a*digui(a,b-1)
print(digui(3,4))
输出:81