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
相关推荐
Mr-Wanter3 分钟前
vue 数据反显时数字/字母不换行导致的样式问题
前端·javascript·vue.js
小北方城市网5 分钟前
Spring Cloud 服务治理实战:构建高可用微服务体系
spring boot·python·rabbitmq·java-rabbitmq·数据库架构
梁萌11 分钟前
vue项目从npm升级为pnpm
前端·npm·node.js
修己xj11 分钟前
CSS魔法:对话生成器与奔驰骏马的创意实现
前端·css
qq_124987075312 分钟前
基于Java的心理测试系统的设计与实现(源码+论文+部署+安装)
java·开发语言·vue.js·spring boot·计算机毕设·计算机毕业设计
写代码的【黑咖啡】24 分钟前
Python中的Statsmodels:统计建模与假设检验
开发语言·python
福楠28 分钟前
C++ | 红黑树
c语言·开发语言·数据结构·c++·算法
Jaxson Lin28 分钟前
Java编程进阶:智能仿真无人机项目1.0
java·开发语言
程序员杰哥29 分钟前
Pytest自动化测试框架实战
自动化测试·软件测试·python·测试工具·职场和发展·测试用例·pytest
琹箐31 分钟前
Cursor 无法使用prettier格式化
前端