test4-3(fibonacci序列)

原创 2013年12月04日 15:02:40

程序:

/*
* Copyright(c)2013,
*All right reserved.
*文件名称:test4-3.cpp
*作    者:徐驰
*完成日期:2013-12-04
*版 本 号:v1.0
*
*输入描述:第n个数
*问题描述:fibonacci序列
*程序输出:数值
*问题分析:略
*算法分析:F0=0,F1=1,Fn=F(n-1)+F(n-2)(n>=2,n∈N*)
*/
#include<iostream>
using namespace std;
long fact(int n);
void main()
{
	int n;
	while(1)
	{
		cout<<"输入第几个数字(0退出):";
		cin>>n;					
		if(n<=0)break;
		else
		{
			cout<<fact(n)<<endl;
		}
	}
	cout<<"thank you~~~"<<endl;
}
long fact(int n)
{
	if(n==1)return 0;
	else if(n==2)return 1;
	else return fact(n-1)+fact(n-2);
}
/*#include<iostream>
using namespace std;
long fact(int n);
void main()
{
	int n;
	while(1)
	{
		cout<<"输入第几个数字(0退出):";
		cin>>n;					
		if(n<=0)break;
		else
		{
			cout<<fact(n)<<endl;
		}
	}
	cout<<"thank you~~~"<<endl;
}
long fact(int n)
{
	long f1=0,f2=1,f;
	int i;
	if(n==1)return 0;
	else if(n==2)return 1;
	else
	{
		for(i=3;i<=n;i++)
		{
			f=f1+f2;
			f1=f2;
			f2=f;
		}
		return f;
	}
}*/

结果:


感觉递归法执行速度很慢啊。。。。

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

蓝桥杯题——BEGIN-2 序列求和 BEGIN-3 圆的面积  BEGIN-4 Fibonacci数列 C语言+Java

BEGIN-2 序列求和 问题描述:C语言代码:#include int main(){ long long n; scanf("%I64d",&n); printf("%I...

thinking in java test4.3练习(1)(2)(3)(4)(5)用三元操作符和按位操作来显示二进制

题目(1):写一个程序,打印从1到100的值。 代码如下: public class Test4_3_1 { public static void main(String[] args...

thinking in java test5.3练习(3)(4)(5)(6)(7)

练习(3):创建一个带默认构造器(即无参构造器)的类,在构造器中打印一条消息。为这个类创建一个对象。 代码如下:public class test5_3_3 { public static ...

VB 输出Fibonacci序列

  • 2010-06-07 13:58
  • 37KB
  • 下载

Fibonacci序列的打印和输出

  • 2011-11-09 08:38
  • 5.06MB
  • 下载

标准Fibonacci序列

[定理1] 标准Fibonacci序列(即第0项为0,第1项为1的序列)当N大于1时,一定有f(N)和f(N-1)互质 其实,结合“互质”的定义,和一个很经典的算法就可以轻松证明 对,就是辗转相除...

多线程产生Fibonacci序列

  • 2012-07-26 19:18
  • 875B
  • 下载

java-算法Fibonacci序列

一.递归的方法import java.util.Scanner; public class Fibonacci{ public static void main(String[] a...

Fibonacci序列

  • 2013-03-25 20:09
  • 148B
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)