gpt4 book ai didi

c# - 如何检查 Math.cos(angle) = 0

转载 作者:太空狗 更新时间:2023-10-29 23:59:48 25 4
gpt4 key购买 nike

我正在尝试为 tan 函数找到正确的域,我知道这一点

tan x = sinx / cos x

tancos x = 0 时未定义。所以

我正在尝试检查 cos x 是否为 0。

 if ( Math.Cos(x).Equals(0) )
{
// do stuff
}

但这绝不是真的,因为 Math.Cos 返回 6.123....E-17如何检查 cos == 0?

最佳答案

您需要稍微放宽您的期望 - 为了使 Math.Cos(x) 真正等于 0,您要么需要 Cos 不准确(这当然会发生)或者 x 具有非理性值。

相反,您应该计算出一些公差 - Math.Cos 的一些值范围非常接近到 0。例如:

if (Math.Abs(Math.Cos(x)) < 1e-15)

那个 1e-15 几乎是任意选择的 - 你应该为你的特定任务找出你想要的。 (这仍然会给出相当大的 tan 值,当然...)

关于c# - 如何检查 Math.cos(angle) = 0,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28700168/

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