Exkurs: Mathematische Funktionen mit java.lang.Math

Aus ComeniusWiki
Version vom 28. September 2013, 10:27 Uhr von B.Schiller (Diskussion | Beiträge)

(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Wechseln zu: Navigation, Suche

Eine der großen Stärken von Java sind vordefinierte Klassen, die in einer Bibliothek bzw. einem package mitgeliefert werden. Ein typisches Beispiel für so eine vordefinierte Klasse ist die Klasse Math, die im package java.lang enthalten ist. Die Sprache Java selbst sieht nur einfache arithmetische Operationen wie Addition, Subtraktion, Multiplikation etc. vor. Schon bei einfachen mathematischen Formeln müssen wir aber kompliziertere mathematische Funktionen verwenden wie z.B. Quadratwurzel, Sinus oder Cosinus. Die Designer von Java haben sich entschlossen, diese komplexeren mathematischen Funktionen in eine spezielle Klasse namens Math zu packen. Die Klassen von java.lang werden immer automatisch vom Java-Compiler verfügbar gemacht, so dass das package nicht importiert werden muss.

Dokumentation der Klasse java.lang.Math

Beispiele für die Verwendung von Methoden der Klasse Math:

Funktion Methode
Kreiszahl Pi Math.PI
Quadratwurzel von x Math.sqrt(x)
Potenz: x hoch a Math.pow(a,b)
Winkelfunktionen (sin, cos, tan) Math.sin(x)
Rundung Math.round(x)
Aufrunden Math.ceil(x)
Abrunden Math.floor(y)


Anwendungen

Beispiel 1:

public void wurzelBerechnen(){
   Scanner eingabe = new Scanner (System.in);
   System.out.print ("Geben Sie eine Zahl ein: ");
   int x = eingabe.nextInt(); 
   System.out.println("Die Wurzel von "+x+" ist "+Math.sqrt(x));
}

Beispiel 2:

public void gerundeteWurzel(){
   Scanner eingabe = new Scanner (System.in);
   System.out.print ("Geben Sie eine Zahl ein: ");
   int x = eingabe.nextInt();
   System.out.println("Die gerundete Wurzel von "+x+" ist "+Math.round(Math.sqrt(x)));
}


Aufgabe 1

Erstelle eine Methode public void pythagoras(), die nach Eingabe der Seitenlänge der beiden Katheten eines rechtwinkligen Dreiecks die Länge der Hypotenuse berechnet.

Lösungsvorschlag


Aufgabe 2

Erstelle eine Methode public void kugel(), die nach Eingabe des Radius das Volumen und die Oberfläche der entsprechenden Kugel berechnet. (Achtung: Bei der Berechnung des Volumens lauert eine böse "Datentypfalle" !!)

Lösungsvorschlag