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
相关推荐
energy_DT13 分钟前
2026年十五五油气田智能增产装备数字孪生,CIMPro孪大师赋能“流动增产工厂”三维可视化管控
前端
龙猫里的小梅啊17 分钟前
CSS(四)CSS文本属性
前端·css
无巧不成书021823 分钟前
零基础Java网络编程全解:从核心概念到Socket实战,一文打通Java网络通信
java·开发语言·网络
MXN_小南学前端24 分钟前
watch详解:与computed 对比以及 Vue2 / Vue3 区别
前端·javascript·vue.js
饭小猿人29 分钟前
Flutter实现底部动画弹窗有两种方式
开发语言·前端·flutter
让学习成为一种生活方式40 分钟前
pbtk v 3.5.0安装与使用--生信工具084
前端·chrome
aq553560041 分钟前
Workstation神技:一键克隆调试环境
java·开发语言
heimeiyingwang44 分钟前
【架构实战】FinOps云成本优化实践
前端·chrome·架构
lly2024061 小时前
框架:构建高效系统的基石
开发语言
Mr Xu_1 小时前
从后端数据到前端图表:深入解析 reduce 与 flatMap 的数据整形实战
前端·javascript