斐波那契数列是一个很经典的数列,前几项为1,1,2,3,5,8,13,21,34......
好,那今天就来看看怎样用C++来解吧!
题目:数列的第一项和第二项都是 1,从第三项开始,每一项是其前面两项之和,即 1, 1, 2 , 3 , 5, 8, ··· 。请你用编程找到该数列的第 n 项。
思路:首先定义一个变量,表示这个数列的第n个数,然后来三个变量last1、last2和now,分别表示前第一项、前第二项和现在的数,last1和last2初值都为1,now没有初值。来两个if:第一个,条件是如果n小于等于2,则输出1(这是很简单的);第二个,条件是如果n大于2,里面是一个for循环,for循环的i从3开始,至n结束(PS:是从3开始!从3开始!从3开始!),循环里是更新过程:now=last1及last2的和,last1变为now,last2变为last1(这个过程必须要在第二个if里面)
code:
#include <iostream>
using namespace std;
int main()
{
int n;
cin >> n;
int last2 = 1, last1 = 1, now;
if (n <= 2)
{
cout << 1 << endl;
}
if (n > 2)
{
for (int i = 3; i <= n; i++)
{
now = last1 + last2;
last2 = last1;
last1 = now;
}
cout << now << endl;
}
return 0;
}