用C#解题有一个分数序列:2⼀1,3⼀2,5⼀3,8⼀5,13⼀8,21⼀13....求出这个数列前20项之和

2025-01-05 23:06:10
推荐回答(1个)
回答1:

            
float m,n,t,sum=0;
int i;
n=1.0f;
m=2.0f;
for(i=1;i<=20;i++)
{
sum+=m/n;
t=n+m;
n=m;
m=t;
}
Console.WriteLine("前20项之和为:{0}", sum);
Console.ReadKey();

1.首先弄清楚这组分数序列的规律:
从第二个数开始
分子=前一个数的分子+分母
分母=前一个数的分子

2.需求是前20项之和,因此循环20-1次相加是必然的.
3.第一个数初始化为x=2,y=1
4.从第二个数开始:
分子x=x+y
分母y=x
由于x的值发生变化,因此中间用变量a复制一下.
5.重复上面的操作,直到循环结束.