java - 如何在 Java 中生成这些正弦和余弦函数? (泰勒级数)

标签 java bluej

Taylor series for sine and cosine我将在这里发布我的代码:

    public double MiSeno(long n, int t) //n es x, t es en
{
double s = 0, x;
int sig = 1;
for(int i = 1; i < t; i++)
{
    x = Math.pow(n,i) / Factorial(i) * sig;
    sig *= -1;
    s += -x;
}
return s;
 }

我知道我现在做错了,但我很困惑。

最佳答案

正弦级数的幂和阶乘移动两个(即奇数),因此您的 for 循环应该是:

for(int i = 1; i < t; i+=2)

有几件事:

  • 确保将 Factorial 的输出类型转换为 double 以获得精确的浮点值。
  • 确保您的整数也不会因阶乘计算而溢出。

关于java - 如何在 Java 中生成这些正弦和余弦函数? (泰勒级数),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46503671/

相关文章:

java - selenium java WebDriver 中的空指针异常

java - 比较我类的两个泛型的更好选择。

java - Spring Boot 应用程序中的 Mockito 模拟和 spy

java - 如何在 Web 上下文中设置 RabbitMQ RPC

java - Eclipse 与 BlueJ 问题

Java Swing动画重影问题

java - 在java中读取特定字符之前的文件

java - Java 无法到达 if 条件语句

java - 连接到远程 mysql 服务器抛出错误

java - 基本 Java 程序无法在 Bluej 中运行