[英]Converting result of Math.sin(x) into a result for degrees in java
我想轉換Math.sin(x)
,其中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));
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.