Math.cos
andを使用しMath.sin
ていますが、次のような予期しない結果が返されます。
Angle Sin Cos
354 0.8414 -0.5403
352 0.1411 0.98998
350 -0.958 -0.2836
なぜこれらの結果が得られるのですか?
度を使用しようとしていますか?sin
とcos
はラジアンを期待していることに注意してください。
Math.cos(Math.toRadians(354))
Math.cos
度ではなく、ラジアンで角度をMath.sin
とります。したがって、次を使用できます。
double angleInDegree = 354;
double angleInRadian = Math.toRadians(angleInDegree);
double cos = Math.cos(angleInRadian); // cos = 0.9945218953682733
public static double sin(double a)
Parameters:
a - an angle, in radians.
Returns:
the sine of the argument.