有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13 … 求出这个数列的前20项之和。
要求:利用循环计算该数列的和。注意分子分母的变化规律。
注意:
a1=2, b1=1, c1=a1/b1;
a2=a1+b1, b2=a1, c2=a2/b2;
a3=a2+b2, b3=a2, c3=a3/b3;
…
s = c1+c2+…+c20;
s即为分数序列:2/1,3/2,5/3,8/5,13/8,21/13 … 的前20项之和。
int x = 2; //分子
int y = 1; //分母
int t = 0;
double sum = 0;
for(int i = 1;i<=20;i++) {
sum += (double)x/y;
t = y;
y = x; //第二个数的分母等于第一个数的分子
x = y+t; //第二个数的分子等于第一个数的分子加分母
}
System.out.println("前20项之和为:"+sum);
//结果
前20项之和为:32.66026079864164