斐波那契数列

来源:互联网 发布:40岁程序员干不了 编辑:程序博客网 时间:2024/06/05 05:56

 菲波那契数列是指这样的数列: 

数列的第一个和第二个数都为1, 接下来每个数都等于前面2个数之和。

给出一个正整数k,要求菲 波那契数列中第k个数是多少。  

input: 输入一行,包含一个正整数k。(1 <= k <= 46)  
output: 输出一行,包含一个正整数,表示菲波那契数列中第k个数的大小  

sample input 19

 sample output 4181 

#include <iostream>
using namespace std;
int main()
{

int k,a1=1,a2=1;//用a1作为倒数第二项,用a2作为第二项
int x;
scanf("%d",&k);
if(k==1||k==2)
printf("%d",1);
else{

for(int i=0;i<k-2;++i){
x=a1+a2;
a1=a2;
a2=x;
}
printf("%d",a2);
}

return 0;
}

0 0