python函数复用和递归&汉诺塔&斐波那契数列&数列取反

#digui

#rvs not res


v='asdfg'
def fact(n):
    if n==0:
        return 1
    else:
        return n*fact(n-1)
def main():
    print(fact(5))
    print(res(v))
def res(v):
    if v == "":
        return v
    else:
        return res(v[1::1])+v[0]
main()
 

斐波那契数列

#fibonacq
def fibo(n):
    if n == 1 or n == 2:
        return 1
    else:
        return fibo(n-1)+fibo(n-2)
def main():
    print(fibo(eval(input())))
main()

 

汉诺塔

#hannouta
count = 0
def hannouta(n,src,dist,mid):
    global count
    if n==1:
        print("{},{}->{}".format(1,src,dist))
        count += 1
    else :
        hannouta(n-1,src,mid,dist)
        print("{},{}->{}".format(n,src,dist))
        count += 1
        hannouta(n-1,mid,dist,src)
def main():
    hannouta(3,'A','B','C')
    print(count)
main()


    

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值