为什么在编程中要使用弧度?

8

我和其他人一样喜欢弧度制,通常更喜欢使用它们而不是角度制,但为什么编程中要使用弧度?

为了将某物旋转180度,您需要将其旋转3.14159265...。当然,大多数语言都有某种pi的常数,但为什么我们要使用像pi这样的无理数,特别是对于简单的程序,我们可以使用整数代替呢?

我们依赖计算机来判断3.14159265是否足够接近pi,以使正弦和余弦等函数返回正确的值,但是如果计算机过于准确,则值会稍微偏差(sin(3.14159265) = 0.00000000358979303)。但是在使用180度时,这并不是一个问题。

2个回答

9

实际上这是一个问题,尤其当你不精确地使用90度的倍数时,它会以不同的方式显现出来。

归根结底,计算三角函数所使用的机制都是以弧度为单位定义的(即使是由CPU的微码实现的;您可能需要查看数值方法文本以获取详细信息,但他们确实希望以弧度的形式进行计算),而在度数下工作则需要不断地在两者之间进行转换,导致累积误差。由于浮点数(特别是超越数)中已经存在大量错误,再加上额外的转换会减缓速度并增加更多可避免的错误。


我喜欢这个答案,但是在 CPU 微码存在以前,软件三角函数不是已经使用弧度了吗? - Kingsley

0
因此正弦不是一个基本单位系统,因为你认为一个基本单位系统能够通过另一个基本单位系统(算术)验证自己的结果。所以尝试用正弦本身进行计数是错误的。
如果有一个圆,你可以计算弧度,因为它在一圈内等于自己 --> 2π弧度。

https://math.stackexchange.com/questions/1339540/why-does-the-derivative-of-sine-only-work-for-radians

这是关于算术本身的内容。

https://en.wikipedia.org/wiki/Arithmetic_derivative

使用弧度,我们不需要使用算术的扩展规则。 我们只需使用乘法函数而不是完全函数。我们为超对称十进制数系统发明了扩展的乘法函数。

https://en.wikipedia.org/wiki/Multiplicative_function

这是关于质数的,我的朋友。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接