1. 程式人生 > >遞迴演算法求解的小問題-------題目:有一分數序列:2/1,3/2,5/3,8/5,13/8,21/13...求出這個數列的前20項之和。

遞迴演算法求解的小問題-------題目:有一分數序列:2/1,3/2,5/3,8/5,13/8,21/13...求出這個數列的前20項之和。

package Auto測試;
/*
 * 
題目:有一分數序列:2/1,3/2,5/3,8/5,13/8,21/13...求出這個數列的前20項之和。 

 */
public class AutoTest {
	public static void main(String[] args){
		//定義項數
		int j = 20;
		double num = 0;
		for(int i=1;i<=j;i++) {
			num = num + (zi(i)/mu(i));
		}
		System.out.println(num);
	}
	//求的是第i項的分子
	public static double zi(int i) {
		if(i==1) {
			return 2;
		}else {
			return mu(i-1)+zi(i-1);
		}
	}
	//求的是第i項的分母
	public static double mu(int i) {
		if(i==1) {
			return 1;
		}else {
			return zi(i-1);
		}
	}
}