【Java例题】3.6 计算arcsin(x)的值


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;
	}
}

 

  

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM