递归算法求解的小问题-------题目:有一分数序列: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);
		}
	}
}	

猜你喜欢

转载自blog.csdn.net/mataodehtml/article/details/84334516