case R.id.bTanx:
temp=(float) (number/0.0174532925);
num=Math.tan(temp);
display.setText("Your Result is " + num);
伙计们,当此号码= 45时,无法通过此代码获取“您的结果为1”.请提供帮助.
因为tan(45)= 1以度为单位.我已经将其转换了,但是没有理想的结果.
解决方法:
要将度数转换为弧度,您首先需要通过除以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);
标签:java,android,math
来源: https://codeday.me/bug/20191030/1964981.html