费布拉切数列

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了费布拉切数列相关的知识,希望对你有一定的参考价值。

 费布拉切数列又称黄金分割数列,指的是这样一个数列:1 1 2 3 5 8 13 21....

 实现费布拉切数列的方法有两种,一种是以数组下标的形式,arr[i]=arr[i-1]+arr[i-2];arr[0]=1;

arr[1]=0;

代码:

#include <stdio.h>
int main()
{
	int arr[12];
	int i;
	arr[0]=1;
	arr[1]=1;
	for(i=2;i<12;i++)
	{
		arr[i]=arr[i-1]+arr[i-2];
	}
	for(i=0;i<12;i++)
	{
		printf("%d  ",arr[i]);
	}
	return 0;
}

第二种方法中使用了交换数的原理,f3=f1+f2;f1=f2,f2=f3

代码:

#include <stdio.h>
int Fib(int num)
{
	int f1=1,f2=1,f3=2;
	if (num<3)
	{
		return 1;
	}
	else 
	{
		num=num-2;
		while(num)
		{
			f3=f1+f2;
			f1=f2;
			f2=f3;
			num--;
			//printf("%d ",f3);
		}	
	}
	return f3;
}
int main()
{
	int num=8;
	int ret=Fib(num);
	printf("%d",ret);
	return 0;
}


本文出自 “Dream” 博客,请务必保留此出处http://12951882.blog.51cto.com/12941882/1980834

以上是关于费布拉切数列的主要内容,如果未能解决你的问题,请参考以下文章

斐波那切数列

斐波那切数列

斐波那切数列

什么是菲波那切数列啊?

菲波纳切数列

PTA乙级 (1049 数列的片段和 (20分))