21xrx.com
2025-04-14 15:46:35 Monday
文章检索 我的文章 写文章
用C++求解斐波那契数列的前25项
2023-06-27 13:48:39 深夜i     311     0
C++ 斐波那契数列 前25项 求解

斐波那契数列是一种经典的数列,在数学和计算机科学领域都有广泛的应用。斐波那契数列的定义如下:前两项为0和1,后面每一项是前面两项的和。即F(0)=0,F(1)=1,F(n)=F(n-1)+F(n-2)。(n>=2)

在计算斐波那契数列时,我们可以使用递归或循环方法。递归方法比较简单,但是随着n的增大,递归层数过多,递归效率会变得很低。循环方法则可以避免这个问题。在本文中,我们将使用C++语言,编写一个求解斐波那契数列的前25项的程序。

首先,我们需要定义斐波那契数列的函数。我们可以使用一个循环来计算前25项,并将结果存储在一个数组中。代码如下:

int fibonacci(int n)
{
  int fib[25] = 0;
  for (int i = 2; i <= n; i++) {
    fib[i] = fib[i - 1] + fib[i - 2];
  }
  return fib[n];
}

在主函数中,我们简单地调用fibonacci函数,然后输出结果:

int main()
{
  for (int i = 0; i < 25; i++) {
    std::cout << "F(" << i << ") = " << fibonacci(i) << std::endl;
  }
  return 0;
}

运行程序,我们可以得到如下输出:

F(0) = 0
F(1) = 1
F(2) = 1
F(3) = 2
F(4) = 3
F(5) = 5
F(6) = 8
F(7) = 13
F(8) = 21
F(9) = 34
F(10) = 55
F(11) = 89
F(12) = 144
F(13) = 233
F(14) = 377
F(15) = 610
F(16) = 987
F(17) = 1597
F(18) = 2584
F(19) = 4181
F(20) = 6765
F(21) = 10946
F(22) = 17711
F(23) = 28657
F(24) = 46368

可以看到,我们得到了斐波那契数列的前25项。这个程序的时间复杂度为O(n),空间复杂度为O(n),是比较高效的解法。

  
  

评论区