求2/1+3/2+4/3+5/4……

来源:百度知道 编辑:UC知道 时间:2024/05/29 16:03:24
sum=2/1+3/2+4/3+5/4……(前20项)
用Fibonacci数列公式

C语言
对不起 写错了
应该是2/1+3/2+5/3+8/5+13/8……

//---------------------------------------------------------------------------

#include <stdio.h>

double su(int n)
{

int m1=1,m2=2,z1=2,z2=3,i=0,t;
double s=(double)z1/m1+(double)z2/m2;
while (i++<n-2)
{
z1+=z2;
m1+=m2;
s+=(double)z1/m1;
t=z1;
z1=z2;
z2=t;
t=m1;
m1=m2;
m2=t;

}
return s;
}
int main(void)
{
printf("%lf\n",su(20));
return 0;
}
//---------------------------------------------------------------------------

#include<stdio.h>

int main()
{
float a[21];
a[0]=a[1]=1;
float sum=0;
for(int i=2; i<=21; i++)
{
a[i]=a[i-1]+a[i-2];
sum=a[i]/a[i-1]+sum;
}
printf("%f",sum);
return 0;
}
这个程序就可以了。