|
发表于 2004-7-26 17:57:27
|
显示全部楼层
<>Fibonacci数列的极限指的是F(k)/F(k-1)当k趋于无穷时比值趋于(1+sqrt(5))/2。
这种无法矢量化算法的程序用C语言写肯定比matlab程序要快很多的,因为还要算极限,可以这样写
#include <stdio.h>
void Fibonacci(int n);
int main(int argc, char* argv[])
{
Fibonacci(30);
return 0;
}
void Fibonacci(int n)
{//计算F(3)。。。F(n)的值,和相邻两项的比值
long x=1,y=1,z=1;//如果要计算更大的n,可以考虑用double 型
int m;
for(m=3;m<=n;m++) {
z=x+y;
printf("F(%d)=%ld\n",m,z);
printf("F(%d)/F(%d)=%f\n",m,m-1,(double) z /(double) y);
x=y;
y=z;
};
}</P><>
</P> |
|