gpt4 book ai didi

c# - C# 中的 Math.Cos 和 Math.Sin

转载 作者:太空狗 更新时间:2023-10-29 18:04:49 28 4
gpt4 key购买 nike

我正在尝试一些我认为应该相当简单的事情。我有一个角度、一个位置和一个距离,我想从这些信息中找到 X、Y 坐标。

对于 90 度的示例输入,我使用以下代码将值转换为弧度:

public double DegreeToRadian(float angle)
{
return Math.PI * angle / 180.0;
}

这给了我 1.5707963267949 弧度然后当我使用

Math.Cos(radians)

我最终得到一个答案:6.12303176911189E-17

这到底是怎么回事? 90 度的余弦应该为 0,那么为什么我会得到这样的偏差......更重要的是我该如何阻止它?

最佳答案

让我用另一个问题来回答你的问题:你认为 6.12303176911189E-17 离 0 有多远?您所说的偏差 实际上是由于 float 在内部存储的方式。我建议您阅读 following article .在 .NET 中,它们使用 IEEE 754 standard 存储.

关于c# - C# 中的 Math.Cos 和 Math.Sin,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6082632/

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