将Math.sin(x)的结果转换为java中度数的结果

我想转换Math.sin(x) ,其中x在弧度中的结果将给出x作为度数而不是弧度。

我已经使用了普通方法和java内置的度和弧度之间的转换方法,但是我传递给Math.sin()方法的任何参数都被视为弧度,从而导致我的转换是徒劳的。

我希望输入一个sin输入,就像输入被处理为度数而不是像Math.sin()方法那样的弧度。

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 ) ; 

如果您的弧度值为a,则将弧度值乘以(22/7)/ 180。

对于上述情况,代码将是这样的: –

 double rad = 45 // value in radians. double deg ; deg = rad * Math.PI/180; // value of rad in degrees. 

你可以将弧度转换为这样的度数:

 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函数。

如果要打印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));