我很困惑,我认为我的程序写得不正确,但现在我意识到问题所在。
我为一个数字的余弦得到了两个不同的值。
例如这个号码为329.85
在计算器上我得到0.8647 .....
在我的C#程序中,我得到-0.99985159087810649 使用这个表达式
double asnwer = Math.Cos(329.85);
有人可以解释一下发生了什么吗?或者我做错了什么?
答案 0 :(得分:10)
在C#和.NET Framework中,三角数学方法适用于弧度。
http://msdn.microsoft.com/en-us/library/system.math.cos(v=vs.110).aspx
我建议创建一个将度数转换为弧度的方法,如下所示:
double DegreesToRadians(double degrees)
{
return degrees * Math.PI / 180.0;
}
然后试试以下内容:
Math.Cos(DegreesToRadians(329.85));
答案 1 :(得分:6)
你的计算器正在使用度数(虽然它也可能有弧度模式),而C#中的Math.Cos
则需要弧度。
尝试:Math.Cos(329.85*2*Math.PI/360)
答案 2 :(得分:-2)
你的计算器是假设弧度。 .NET是度。