CodeGym /Java Blog /Willekeurig /Math.cos()-methode in Java
John Squirrels
Niveau 41
San Francisco

Math.cos()-methode in Java

Gepubliceerd in de groep Willekeurig
De wiskundeklasse in Java bevat veel wiskundige functies. Trigonometrische functies behoren tot de belangrijkste functies bij het programmeren. Een van deze functies is Math.cos() .

Trigonometrie voor programmeren?

Natuurlijk zijn er programmeurs die in hun werk bijna nooit trigonometrische functies tegenkomen, maar toch zijn deze functies voor veel taken buitengewoon belangrijk. Bijvoorbeeld voor computergraphics of spellogica. Met name sinussen en cosinussen zijn betrokken bij de zogenaamde rotatiematrix waarmee je objecten en werelden kunt roteren. En als u de lengte van het pad langs de kaart moet berekenen, kunnen trigonometrische functies van pas komen.

Math.cos()-methode in Java

De methode double cos (double x) van de klasse Math retourneert de cosinuswaarde van de x , waarbij x een argument is, een hoek in radialen . Hier is een verklaring van de Java.lang.Math.cos() -methode:

double cos(double x)
Als u niet vertrouwd bent met het berekenen van hoeken in radialen, kunt u de speciale functie gebruiken om radialen om te zetten in graden:

double toDegrees(double angRad)
Er is ook een inverse functie die graden converteert naar radialen, wat ook handig kan zijn.

double toRadians(double angDeg)
Hier is een codevoorbeeld van java.lang.Math.cos() :

public class CosExample {
   public static void main(String[] args) {
       
       int x1 = 1;
       double x2 = 0.5;
       double x3 = Math.PI;

       //using java.lang.Math.cos() for 1, 0.5 and PI rad 

       System.out.println("cosine of " + x1 + " rads = " + Math.cos(x1));
       System.out.println("cosine of  " + x2 + " rads = " + Math.cos(0));
       System.out.println("cosine  " + x3 + " rads = " + Math.exp(x3));


       //here we declare an 60 degrees angle

       double degree = 60;
       //here we use Math.toRadians to convert 60 degrees to radians, use the cos() method
       //to calculate the cosine of 60 degrees angle and print the result out
       System.out.println("cosine of " + degree + " degrees = " + Math.cos(Math.toRadians(degree)));

   }
}
De uitvoer is:
cosinus van 1 rad = 0,5403023058681398 cosinus van 0,5 rad = 1,0 cosinus 3,141592653589793 rad = 23,140692632779267 cosinus van 60,0 graden = 0,5000000000000001

Enkele speciale gevallen

In wiskunde zijn er concepten van onbepaalde vorm, positieve en negatieve oneindigheid. Een getal gedeeld door 0,0 geeft oneindig, positief of negatief, afhankelijk van de positiviteit of negativiteit van dat getal. U kunt op verschillende manieren een onbepaalde vorm krijgen. Als u bijvoorbeeld nul door nul of oneindig door oneindig probeert te delen. In Java zijn er speciale constanten uit de klasse Double zoals Double.NaN (geen getal, je zou kunnen zeggen dat het een soort onbepaalde vorm is), Double.POSITIVE_INFINITY en Double.NEGATIVE_INFINITY. De methode Math.cos() gedraagt ​​zich op een specifieke manier bij deze drie concepten. Als het argument NaN of een oneindigheid is, dan is Math.cos() NaN. Laten we een codevoorbeeld nemen:

public class CosSpecialCases {

       public static void main(String[] args) {

           double positiveInfinity = Double.POSITIVE_INFINITY;
           double negativeInfinity = Double.NEGATIVE_INFINITY;
           double nan = Double.NaN;

           //The argument is positive infinity, the output is NaN
           System.out.println(Math.cos(positiveInfinity));

           //The argument is negative infinity, the output NaN
           System.out.println(Math.cos(negativeInfinity));

           //The argument is NaN, the output is NaN
           System.out.println(Math.cos(nan));
       }
   }
De uitvoer is:
NaN NaN NaN

Een sinus- en cosinustaak voor beginners

Probeer de beweging van de wijzers te programmeren met Math.cos() en Math.sin() . U kunt ook afbeeldingen aan deze taak toevoegen (met behulp van Processing, JavaFX of iets anders) en u krijgt een geanimeerde klok.
Opmerkingen
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION