我想转换Math.sin(x)
,其中x
以弧度为单位转换为x
以度为单位而不是弧度的结果。
我已经使用了普通方法和java内置度和弧度之间的转换方法,但是我传递给Math.sin()
方法的任何参数都被视为弧度,从而导致我的转换是徒劳的。
我想要输出一个sin输入,好像输入被用度来处理,而不像Math.sin()
方法那样处理弧度。
答案 0 :(得分:14)
Java的Math
库为您提供了在度和弧度之间进行转换的方法:toRadians和toDegrees:
public class examples
{
public static void main(String[] args)
{
System.out.println( Math.toRadians( 180 ) ) ;
System.out.println( Math.toDegrees( Math.PI ) ) ;
}
}
如果你的输入是度数,你需要将进入sin
的数字转换为弧度:
double angle = 90 ;
double result = Math.sin( Math.toRadians( angle ) ) ;
System.out.println( result ) ;
答案 1 :(得分:1)
如果您的弧度值为a,则将弧度值乘以(22/7)/ 180。
对于上述情况,代码就是这样的: -
double rad = 45 // value in radians.
double deg ;
deg = rad * Math.PI/180; // value of rad in degrees.
答案 2 :(得分:0)
您可以将弧度转换为以下度数:
double rad = 3.14159;
double deg = rad*180/Math.PI;
反转将度数转换为弧度(乘以pi / 180)。您无法更改Math.sin的“输入法”(您不能告诉函数使用度而不是弧度),您只能更改将其作为参数传递的内容。如果您希望程序的其余部分使用度数,则必须将其转换为弧度,尤其是Math.sin()。换句话说,将度数值乘以pi并除以180.要与Math.sin()一起使用,只需将其转换为:
double angle = 90; //90 degrees
double result = Math.sin(angle*Math.PI/180);
只使用转换本身不会改变任何东西,你必须将转换后的值传递给sin函数。
答案 3 :(得分:-1)
如果要打印sin(90)度值,可以使用以下代码:
double value = 90.0;
double radians = Math.toRadians(value);
System.out.format("The sine of %.1f degrees is %.4f%n", value, Math.sin(radians));