python的函数与递归

需求:

编写一个函数,计算斐波那契数列的第 N 项,并使用递归实现。

为了计算斐波那契数列的第 N 项,可以使用递归方法。斐波那契数列的定义是:

F(0) = 0

F(1) = 1

对于 n >= 2,F(n) = F(n-1) + F(n-2);

递归方法:

递归的核心思想是每次通过将问题分解为更小的子问题来解决。在斐波那契数列的计算中,我们可以通过递归调用来计算 F(n)。

代码实现:

python 复制代码
def fibonacci(n):
    # 基本情况:F(0) = 0, F(1) = 1
    if n == 0:
        return 0
    elif n == 1:
        return 1
    else:
        # 递归计算 F(n-1) 和 F(n-2)
        return fibonacci(n-1) + fibonacci(n-2)

if __name__ == '__main__':
    # 输入一个整数 N,计算斐波那契数列的第 N 项
    try:
        n = int(input("请输入一个整数 N 来计算斐波那契数列的第 N 项: "))
        if n < 0:
            print("请输入一个非负整数!")
        else:
            print(f"斐波那契数列的第 {n} 项是: {fibonacci(n)}")
    except ValueError:
        print("请输入有效的整数!")

示例运行:

输入:

python 复制代码
请输入一个整数 N 来计算斐波那契数列的第 N 项: 6

输出:

python 复制代码
斐波那契数列的第 6 项是: 8
相关推荐
玖笙&5 分钟前
✨万字解析解析:Vue.js优雅封装级联选择器组件(附源码)
前端·javascript·vue.js·前端框架
烟袅6 分钟前
深入理解 React 中 useState 与 useEffect
前端·javascript·react.js
悟能不能悟6 分钟前
Java 中将 List 中对象的某一列转换为 Set
java·开发语言·list
vortex511 分钟前
Bash Shell 的展开与补全机制
开发语言·bash
行走的陀螺仪14 分钟前
前端基建从0到1搭建步骤清单(含工具选型+配置要点+落地注意事项)
前端·javascript·typescript·设计规范·前端工程化·规范化·前端基建
Hi~晴天大圣16 分钟前
if 变量和if not 变量用法之布尔真假值规则
python·if
老歌老听老掉牙17 分钟前
Vericut 5轴机床MCH文件解析与构建指南
xml·python·vericut
小白阿龙19 分钟前
脚手架启动失败(Vue CLI/Vite/Create React App)
前端·vue.js·react.js
010米粉01022 分钟前
Qt Cmake之路(一):Cmake变量语法
开发语言·qt·cmake