簡體   English   中英

將Math.sin(x)的結果轉換為java中度數的結果

[英]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庫為您提供了在度和弧度之間進行轉換的方法: toRadianstoDegrees

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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM