java我很难从我的maclaurin系列中获得sin x的准确输出
// a java program that displays the maclaurinseries math function
// sin x = x - x^3/3! + x^5/5! - x^7/7!
// sin x = (-1)^n * x^(2n+1) / (2n+1)!
import java.util.Scanner;
public class maclaurinseries
{
public static void main(String args[])
{
double x;
double counter=1;
double factorial =1;
double result=0;
Scanner input=new Scanner(System.in);
System.out.println("enter a number");
x=input.nextDouble();
while(x>=counter) {
factorial=2*factorial*counter+1;
result=result+(Math.pow(-1,counter)) * (Math.pow(x,2*counter+1))/(factorial);
counter++;
}
System.out.println("Maclaurin series is" +result);
}
}
以下是我输入x的数字3.14时的代码输出:
enter a number 3.14 Maclaurin series is-24.935440878754584
如你所见,当我将x=3.14代入函数sin x时,我的输出应该是0,而不是-24.935330878754583。我做错了什么
共 (0) 个答案