21xrx.com
2024-11-22 06:30:16 Friday
登录
文章检索 我的文章 写文章
用C++求解斐波那契数列的前25项
2023-06-27 13:48:39 深夜i     --     --
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),是比较高效的解法。

  
  

评论区

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