C++练习之 Fibonacci 数列
来源:互联网 发布:欧文季后赛数据统计 编辑:程序博客网 时间:2024/06/05 19:22
Fibonacci 数列为 1,1,2,3,5,8,13,21……
即第三个数开始,每个数为前两个数之和。
①递归法
#include <iostream>
#include <iomanip>
using namespace std;
int f(int n);
int main()
{
int n,i,k;
cin>>n;//输出多少个Fibonacci数
while(n<0)//判断输入的n是否合法,不合法重新输入。
{
cout<<"error!"<<endl<<"please input again:";
cin>>n;
}
for(k=0,i=0;i<=n;i++)
{
cout<<setw(8)<<f(i);
k+=1;
if(k%5==0)//每输出5个则换行。
cout<<endl;
}
cout<<endl;
return 0;
}
int f(int n)
{
int s;
if(n==0||n==1)
s=1;//给第一、二个赋值
else
s=f(n-1)+f(n-2);//递归调用
return s;
}
②数组法:
#include <iostream>
#include <iomanip>
using namespace std;
int main()
{
int i;
int f[20]={1,1};//设定了数组f[20]即只输出20个Fibonacci数
for(i=2;i<20;i++)
f[i]=f[i-1]+f[i-2];//为第三个至第20个数赋值。
for(i=0;i<20;i++)
{
if(i%5==0)//每输出5个数 换行
cout<<endl;
cout<<setw(8)<<f[i];
}
cout<<endl;
return 0;
}
- C++练习之 Fibonacci 数列
- [入门练习]Fibonacci数列
- (2)C代码之Fibonacci数列
- 蓝桥杯--入门练习 Fibonacci数列
- c语言Fibonacci数列
- ACM之Fibonacci数列
- 算法之数列 Fibonacci
- C语言学习之 求Fibonacci数列前40项
- 【蓝桥杯练习系统】 入门训练 Fibonacci数列
- 蓝桥杯练习:入门训练 Fibonacci数列
- 蓝桥杯练习:入门训练 Fibonacci数列
- 蓝桥杯练习----入门训练 Fibonacci数列
- 经典算法之Fibonacci数列
- 【菜鸟之路】Fibonacci数列
- 蓝桥杯练习题之 Fibonacci数列
- [c++]动态分配空间(Fibonacci数列)
- Fibonacci数列
- Fibonacci数列
- dataTables-动态绑定问题
- iOS开发笔记--字符串连接问题
- JAVA 蜂鸣声 代码 beep
- 正态分布的前世今生(一)
- windows2003 做集群的方法和注意事项
- C++练习之 Fibonacci 数列
- Android 判断程序前后台
- Android 4.0及以后版本添加jar包的方法
- Linux下用户、用户组和用户权限的查看
- Mysql提权总结
- IAP(程序内购买): 完全攻略
- jsoncpp 配置
- 华为的面试题 要求8分钟写出代码
- Hdu 1614 Stacking Boxes