• python递归函数实现阶乘函数


     实现的效果如下:

    参考www.cnblogs.com/yuanchenqi/articles/5828233.html

    f(5)=5*4*3*2*1=120   f(7)=7*6*5*4*3*2*1=5040

    开始:

    def fat(n):

      ret=1

      for i in range(1,n+1):

        ret=ret*i

      return ret

    print(fat(7))

    但是这样写有点复杂,所以可用递归来实现:

    思路:n的阶乘=n*n-1的阶乘

    递归函数特点:调用自己,并有结束条件

    def fact(n):
    if n==1:
    return 1
    return n*fact(n-1)
    print(fact(5))
    案例2:实现菲波那嵌数列
    0 1 1 2 3 5 8 13 21 34 55 (后一个数字是前两数字的和)
    怎样用函数实现如下:
    f(3)=1 取出第三元素
    f(8)=13 取出第8个元素
    实现思路:fibo(8)=fibo(7)+fibo(6)
    def fibo(n):
    if n<=1: 结束条件
    return n
    return fibo(n-1)+fibo(n-2) 调用自己
    print(fibo(8))



  • 相关阅读:
    NPS平台,WCF学习
    QQ机器人Java版
    C#Linq To Entry
    C# AD域操作
    中国象棋软件制作感想
    WPF DataGrid 绑定BitmapSource
    DNN Tips
    Tools tips
    TRANSACTSQL Tips
    【阶段试题分析】阶段一试题总结
  • 原文地址:https://www.cnblogs.com/dbslinux/p/11190028.html
Copyright © 2020-2023  润新知