首页 > 其他 > 详细

递归练习

时间:2020-04-20 22:29:53      阅读:65      评论:0      收藏:0      [点我收藏+]

1、求阶乘

方法一:
s = 1
sum = 0
for i in range(1,3):
    s = s*i
    sum += s
print(s)
print(sum)

def fn(n):
    if n == 1:
        return 1
    else:
        return fn(n-1) * n
print(fn(3))

def fn(n):
    return 1 if n == 1 else fn(n-1) * n

print(fn(3))



def fn1(n,a=1):
    if n == 1:
        return a
    a = a * n
    return fn1(n-1,a)
print(fn1(3))

2、猴子吃桃

def foo(n=10):
    if n == 1:
        return 1
    return (foo(n-1) + 1) * 2

def foo(n=1):
    if n == 10:
        return 1
    return (foo(n + 1) + 1) * 2
    

 

递归练习

原文:https://www.cnblogs.com/alrenn/p/12740660.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!