输出前n个fibonacci序列的值及它们的和(fibonacci序列为1,1,2,3,...)

来源:互联网 发布:协同过滤算法的缺点 编辑:程序博客网 时间:2024/06/14 04:23

一、

#include <iostream>using namespace std;int  fibonacci (int n)//返回第n项fibonacci值.{int last_1 = 0 ,last_2 = 1 , temp;if(n == 0 || n == 1)return 0;for(n -= 2 ;n > 0 ;n--){temp = last_2;last_2 += last_1;last_1 = temp;            }return last_2;}int main(){for(int k = 1; k<10; k++)cout << fibonacci(k) << endl;return 0;}

二、


//输出前n个fibonacci序列的值及它们的和(fibonacci序列为1,1,2,3,...)#include <iostream>using namespace std;int fibonacci(int n)//0 <= n <= 1000{int fir = 0,sec = 1,temp,i = 1;if(n == 0)return fir;while(i++ != n){temp = sec;sec += fir;fir = temp;}return sec;}int main(){int n,sum = 0,i = 0;while(cin >> n){while (i++ != n){cout << fibonacci(i) << '\t';sum += fibonacci(i);}cout << "sum: " << sum << endl;sum = i = 0;}return 0;}

原创粉丝点击