您的位置:首页 > 其它

第十三周上机任务1:Fibnacci序列

2012-11-20 08:42 288 查看
/*  
* 程序的版权和版本声明部分  
* Copyright (c)2012, 烟台大学计算机学院  
* All rightsreserved.  
* 文件名称:fibnacci.cpp                             
* 作    者:李巧丽                             
* 完成日期:2012年11月20日  
* 版 本 号: v1.0        
* 输入描述:无  
* 问题描述:输出Fibnacci序列的第20个数,Fibnacci序列形如0,1,1,2,3,5,8...  
* 程序输出:Fibnacci序列中的第20个数  
* 问题分析:采用递归的方法……  
*/    
#include<iostream>
using namespace std;
int fib(int n);
int main()
{
	cout<<fib(20)<<endl;
	return 0;
}
int fib(int n)
{
	int i;
	if(n==1)
		i=0;
	else if(n==2)
		i=1;
	else
		i=fib(n-1)+fib(n-2);
	return i;
}




运行结果:



采用迭代的方法:

#include<iostream>   
using namespace std;  
int fib(int n);  
int main()  
{  
    cout<<fib(20)<<endl;  
    return 0;  
}  
int fib(int n)  
{  
    int i;  
    if(n==1)  
        return 0;  
    else  
        if(n==2)  
            return 1;  
        else  
            for(i=3;i<=n;i++)  
                return (fib(n-2)+fib(n-1));  
}




运行结果:



心得体会:是不是实践得太少了,我就没体会到迭代与递归的道道呢!!!!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: