我有一项任务,可以制作一个程序,可以计算某个区域图形下方的区域。
我的功能是f(x)=3+(tan(x))^2
我把它变成了javascript所以看起来像这样:
var y = 3 + Math.pow(Math.tan((x)*(180/Math.PI)), 2)
这给出了某些x值的正确结果。但有时候,例如。在x = 3.4
,它会给出一个像16这样的奇怪数字,我期待3
或4
周围的某些内容。
我已经读过它可能是由浮点行为问题引起的,但它不应该给出那么大的差异吗?我不明白。 :(
我使用for循环来更改x
值和数组来存储值。
答案 0 :(得分:1)
x*180/π
将以弧度给出的角度x
转换为度数。但这几乎肯定是错误的:JavaScript三角函数期望它们的参数以弧度表示。因此,如果您的角度是弧度,则根本不需要任何转换,如果它是度数,则应该反过来转换,即x*π/180
。