6.使用泰勒展开式计算arcsin(x)的值。 arcsin(x)=x+x^3/(2*3)+1*3*x^5/(2*4*5)+...+ (2n)!*x^(2n+1)/(2^2n)*(n!)^2*(2n+1)), 其中,|x|<1,当通项|u|<10^(-8)时,输出计算结果。 这里的"^"表示乘方,"!"表示阶乘。
package chapter3;
import java.util.Scanner;
public class demo6 {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
double x=sc.nextDouble();
double sum=x;
double ans;
for(int i=1;i>0;i++) {
//(2n)!*x^(2n+1)/(2^2n)*(n!)^2*(2n+1)),
ans=jie(2*i)*Math.pow(x,2*i+1)/(Math.pow(2,2*i)*jie(i)*jie(i)*(2*i+1));
if(Math.abs(ans)<=Math.pow(10,-8)) {
break;
}
sum=sum+ans;
}
System.out.println(sum);
}
private static int jie(int a) {
int jiec=1;
for(int i=1;i<=a;i++) {
jiec=jiec*i;
}
return jiec;
}
}