题目描述

如和用java画正弦曲线函数 java正弦函数方法_System

输入x,计算上面公式的前10项和。

import java.text.DecimalFormat;
import java.util.Scanner;

public class java_test {
	public static void main(String[] args) {
		Scanner Sc = new Scanner(System.in);
		DecimalFormat df = new DecimalFormat("0.000");// 定义输出结果保留小数点后三位
		double x = Sc.nextDouble();
		double sum = 0;
		for (int n = 1; n <= 10; n++) {
			sum += Math.pow(-1, n + 1) * Math.pow(x, 2 * n - 1) / factorial(2 * n - 1);
		}
		System.out.printf("%s", df.format(sum));
	}

	// 计算的阶乘,注意这里的返回值类型为double类型
	public static double factorial(int n) {
		double sum = 1;
		for (int i = 1; i <= n; i++) {
			sum *= i;
		}
		return sum;
	}
}