gpt4 book ai didi

java - asin() 函数有问题

转载 作者:行者123 更新时间:2023-12-02 07:48:39 24 4
gpt4 key购买 nike

我有这两行代码:

var[1] =var[2].multiply(var[3]).multiply(var[4]).multiply(new BigDecimal(Math.sin(var[5].doubleValue())));
var[5] =new BigDecimal(Math.asin(var[1].divide(var[2],precision,BigDecimal.ROUND_HALF_UP).divide(var[3],precision,BigDecimal.ROUND_HALF_UP).divide(var[4],precision,BigDecimal.ROUND_HALF_UP).doubleValue()));

我给出 var[2]、var[3]、var[4] 和 var[5] 的值以获得 var[1]。

使用的方程是

var[1]=var[2]*var[3]*var[4]*sin(var[5])

然后我尝试使用我刚刚得到的 var[1] 和其他变量的相同值来获取 var[5],它给了我一个错误的数字,我不明白为什么

最佳答案

重写

我正在清理一些算术蜘蛛网,但是:

Math.asin(Math.sin(1)) == ~1
Math.asin(Math.sin(3.14 / 2)) == ~3.14 / 2 // 1.57
Math.asin(Math.sin(3.14)) == ~0

喜欢the documentation表示 Math.asin() 的结果绑定(bind)在 -Pi/2 和 Pi/2 之间...

所以你的答案看起来“不正确”,因为它限制在这个范围内。

备用

asin()最多返回的是:Pi/2 = 1.57

2 > 1.57 所以:

2 - 1.57 = 0.43

1.57 - 0.43 = 1.14

因此:2 = 1.14

关于java - asin() 函数有问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10507591/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com