【程序39】 题目:编写一个函数,输入n为偶数时,调用函数 求1/2+1/4+...+1/n,当输入n为奇数时,调用函数 1/1+1/3+...+1/n

/*
	2017年3月10日16:56:31
	java基础50道经典练习题 例39
	Athor: ZJY 
	Purpose:  
	【程序39】
  题目:编写一个函数,输入n为偶数时,调用函数
  求1/2+1/4+...+1/n,当输入n为奇数时,调用函数
  1/1+1/3+...+1/n(利用指针函数) 

*/
import java.util.Scanner;

public class ProgramNo39_1
{
	public static void main(String[] args) {
		System.out.print("请输入一个数: ");
		Scanner sc = new Scanner(System.in);
		int number = sc.nextInt();
		if(0 == number%2) {
			System.out.println("="+evenSum(number));
		}else {
			System.out.println("="+oddSum(number));
		}
	}
	//奇数和
	private static float oddSum(int number) {
		float odd_sum = 0;
		if(1 == number)
			odd_sum = (1.0f/1);
		else
			odd_sum = (oddSum(number-2)+(1.0f/number));
		
		System.out.print("1/"+number+"+");
		return odd_sum;
	}
	//偶数和
	private static float evenSum(int number) {
		float even_sum = 0;
		if(2 == number)
			even_sum = (1.0f/2);
		else
			even_sum = (evenSum(number-2)+(1.0f/number));
		
		System.out.print("1/"+number+"+");
		return even_sum;
	}
}
/*
	2017年3月10日16:56:31
	java基础50道经典练习题 例39
	Athor: ZJY 
	Purpose:  
*/
import java.util.Scanner;
public class ProgramNo39_2
{
	public static void main(String[] args){
		System.out.print("请输入一个整数:");
		Scanner scan = new Scanner(System.in);
		int n = scan.nextInt();
		scan.close();
		if(n%2 == 0)
		  System.out.println("结果:"+even(n));
		else
		  System.out.println("结果:"+odd(n));
	}
	//奇数
	static double odd(int n){
		double sum = 0;
		for(int i=1; i<n+1; i+=2){
			sum += 1.0/i;
		}
		return sum;
	}
	//偶数
	static double even(int n){
		double sum = 0;
		for(int i=2; i<n+1; i+=2){
			sum += 1.0/i;
		}
		return sum;
	}
}



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值