ZZULIOJ1042: 数列求和3

题目描述

求1-2/3+3/5-4/7+5/9-6/11+...的前n项和,结果保留3位小数。 

 

输入

输入正整数n(n>0)。 

 

输出

输出一个实数,保留3位小数,单独占一行。 

 

样例输入

5

 

样例输出

0.917
import java.util.Scanner;

public class Main {
	public static void main(String[] args) {

		double sum = 1.0;
		Scanner input = new Scanner(System.in);
		int n = input.nextInt();
		
			double deno = 1.0; // 分母
			double number; // 分子
			for (int i = 2; i <= n; i++) {

				if (i % 2 == 0) { // 如果i是偶数,则number是负的

					deno += 2; // 计算下一项分母
					number = -i / deno; // 计算下一项分子

				} else { // 如果i是奇数,则number是正的
					deno += 2;
					number = i / deno;
				}

				sum += number; // 累加求和
			}

			System.out.println(String.format("%.3f", sum));

	}
}

 

你可能感兴趣的:(ZZULIOJ1042: 数列求和3)