C#Math.Cos(double)返回错误的值

Mat*_*att 12 c#

在C#我有这个:

double Cos = Math.Cos(32.471192290848492); //Equals 0.49299653250335213
Run Code Online (Sandbox Code Playgroud)

但是,当我在计算器中执行此操作时,我得到了这个

(0.84366148773210745476752872050588)
Run Code Online (Sandbox Code Playgroud)

为什么它返回错误的值?

Ree*_*sey 17

Math.Cos期望以弧度为单位的角度.我怀疑你的计算器是以度数运作的.

您应该能够通过将度数值转换为弧度来获得相同的答案:

double angleInDegrees = 32.471192290848492;
double cos = Math.Cos(angleInDegrees * (Math.PI / 180.0));
Run Code Online (Sandbox Code Playgroud)


MrW*_*Wuf 6

你可能会把度数与弧度混淆.大多数计算器使用Degrees,而大多数编程语言都设置为使用弧度.