21xrx.com
2024-11-08 21:17:45 Friday
登录
文章检索 我的文章 写文章
C++编程实现斐波那契数列
2023-07-11 17:33:37 深夜i     --     --
C++ 编程 斐波那契数列

斐波那契数列是指由0和1开始,后面每一项都等于前面两项之和的数列。在数学上,斐波那契数列可以用递推公式来表示,而在C++编程中,则可以使用循环或递归的方式来实现。

首先,我们可以通过循环来编写斐波那契数列的计算代码。循环的实现方式如下:


#include <iostream>

int main()

{

  int n;

  std::cout << "请输入要计算的项数: ";

  std::cin >> n;

  int fib1 = 0;

  int fib2 = 1;

  std::cout << "0 " << fib1 << std::endl;

  std::cout << "1 " << fib2 << std::endl;

  for (int i = 2; i < n; ++i)

  {

    int fib = fib1 + fib2;

    fib1 = fib2;

    fib2 = fib;

    std::cout << i << " " << fib << std::endl;

  }

  return 0;

}

上述代码中,我们首先从用户处输入需要计算的斐波那契数列的项数n,并初始化前两个数fib1和fib2。接着,我们先输出前两个数的值,然后进入循环计算,计算的过程中fib1和fib2的值分别指向当前数列的前两个数,而fib则为当前数列的值,计算完毕后输出即可。

除了循环方式外,我们也可以使用递归的方式来实现斐波那契数列的计算。递归的实现方式如下:


#include <iostream>

int fib(int n)

{

  if (n <= 1)

  

    return n;

  

  else

  {

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

  }

}

int main()

{

  int n;

  std::cout << "请输入要计算的项数: ";

  std::cin >> n;

  for (int i = 0; i < n; ++i)

  {

    std::cout << fib(i) << " ";

  }

  return 0;

}

上述代码中,我们通过定义一个递归函数fib来计算斐波那契数列,当计算到第0或第1项时,我们直接返回对应的值,否则递归计算前两个数的和。在主函数中,我们从用户处输入需要计算的数列项数n,然后使用循环调用递归函数来输出数列中的每一个值。

以上两种方法均可以实现C++编程中的斐波那契数列计算,如果需要计算任意项数的斐波那契数列,可以根据实际需求选择适合的计算方式。

  
  

评论区

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