《Java基础经典程序100例》(07)求 2/1+3/2+5/3+8/5+13/8前 20 项之和

1,044 阅读1分钟

小知识,大挑战!本文正在参与「程序员必备小知识」创作活动​​

求 2/1+3/2+5/3+8/5+13/8前 20 项之和

package csdncom.tt;

/**
 * Created by java李杨勇 on 2021/10/30.
 */
public class Sum {
	public static void main(String[] args) {
		double sum = 0;
		double fenZi = 2.0, fenMu = 1.0; // 初始的分子 (fenZi)=2,分母(fenMu)=1
		for (int i = 1; i <= 20; i++) {
			sum += fenZi / fenMu;
			fenMu = fenZi; // 下一项的分母 = 上一项的分子
			fenZi += fenMu; // 下一项的分子 = 上一项的分子加分母
		}
		System.out.println("sum= " + sum);
	}
}

打印: sum= 40.0