Java编程中的逻辑错误

时间:2013-12-19 10:47:53

标签: java android math

case R.id.bTanx:
        temp=(float) (number/0.0174532925);
        num=Math.tan(temp);
        display.setText("Your Result is   " + num);

伙计我通过此代码number = 45无法获得“你的结果为1”。请帮助。 由于{。1}在degrees.i中已转换它。但没有期望的结果。

1 个答案:

答案 0 :(得分:4)

要将度数转换为弧度,首先需要将度数转换为(圆周长度)因子除以360度。接下来,乘以2PI rad(这是'单位圆'的周长)。

在查看单位时,你会这样做:度/度*弧度=弧度

所以除以0.017(2 * PI / 360)之外,你需要乘以:

temp = (float) (number * 0.0174532925);

此外,如果你不使用'魔术数字'并添加评论(让人们知道你在做什么),它会更好(更清晰):

// Convert to rad
temp = (float) (number * 2 * Math.PI / 360);

和/或甚至使用可用的Java功能:

// Convert to rad
temp = Math.toRadians(number);