public class a {
public static void main(String[] args) {
/**
*题目3:有一分数序列: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 项之和。
*
*
*/
//初始值a1=2,b1=1 c1=2;
// a2 =3 ,b2=2 ,c2=a2/b2;
int a1 =2 ,b1=1,c1=2;
int a2=a1+b1,b2=a1;
double c2=(double) 3/2; //因为可以看出 a2/b2,由于b2=a1=2
double sum=0;
for (int i=3 ;i<=20;i++){ //由于排除c1和c2
int an ,bn;
double cn;
an =a2+b2; //从a3开始算,a3=a2+b2
bn=a2; //b3=a2;
cn=(double) an/bn; //c3=a3/b3
sum+=cn;
a2=an; // 这里把 a2=a3 ;
b2=bn; //b3=a2;
}
System.out.println(c1+c2+sum);
}
}