21xrx.com
2024-05-20 03:15:12 Monday
登录
文章检索 我的文章 写文章
C++代码:求斐波那契数列第n个数
2023-07-08 21:11:47 深夜i     --     --
C++ 斐波那契数列 第n个数 代码 算法

斐波那契数列是一个非常经典的数列,定义如下:

F(0) = 0

F(1) = 1

F(n) = F(n-1) + F(n-2),其中 n > 1

斐波那契数列的前几个数字如下:0, 1, 1, 2, 3, 5, 8, 13, ...

如果要求斐波那契数列的第n个数,我们可以使用C++编程实现。下面是一段求斐波那契数列第n个数的C++代码:


#include <iostream>

using namespace std;

int fib(int n) {

  if(n < 2) return n;

  return fib(n-1) + fib(n-2);

}

int main() {

  int n;

  cout << "请输入要求的斐波那契数列的第几个数:";

  cin >> n;

  cout << "斐波那契数列的第" << n << "个数为:" << fib(n) << endl;

  return 0;

}

代码中的 `fib` 函数用来实现斐波那契数列递归求解。当 n 小于 2 时,直接返回 n;否则,递归计算 fib(n-1) 和 fib(n-2) 的和。

在 `main` 函数中,我们先让用户输入要求的斐波那契数列的第几个数。然后调用 `fib` 函数来计算该数,并输出结果。

需要注意的是,由于斐波那契数列的计算是递归进行的,因此计算时间随着斐波那契数列的增长而指数级增加。在使用递归计算斐波那契数列时,应当避免计算超过一定的数值范围,否则可能出现栈溢出等问题。如果需要计算较大的斐波那契数,一般建议使用非递归的动态规划算法来解决。

  
  
下一篇: C++ 数据库简介

评论区

{{item['qq_nickname']}}
()
回复
回复