Lösungsvorschlag 4.2. - Aufgabe 1

Aus ComeniusWiki
Version vom 1. November 2013, 11:37 Uhr von B.Schiller (Diskussion | Beiträge)

(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Wechseln zu: Navigation, Suche
public void winkelfunktionen (double x){
double y=Math.toRadians(x);
System.out.println("Der Sinus von "+x+" Grad = "+sinus(y));
System.out.println("Der Cosinus von "+x+" Grad = "+cosinus(y));
if(kosinus(y)==0){System.out.println("Der Tangens von "+x+" Grad ist nicht definiert!");}else
{System.out.println("Der Tangens von "+x+" Grad = "+tangens(y));}
}

//Eigentliche Berechnung der Winkelfunktionen auf 8 Stellen Genauigkeit durch Aufruf der Methode zum Runden
private double sinus(double x){
        return runden(Math.sin(x),8);}

private double cosinus(double x){
        return runden(Math.cos(x),8);}

private double tangens(double x){
        return runden(Math.tan(x),8);}


private double runden(double wert, int stellen) {
        return  Math.round(wert * Math.pow(10, stellen)) / Math.pow(10, stellen);
    }

Ohne die Methode zum Runden wäre die Ungenauigkeit in der Berechnung so groß, dass z.B. der Ausnahmefall tan(90 Grad) nicht abgefangen werden könnte.

Die Methoden mit Rückgabewert werden auf Zugriffsrecht private gesetzt, da sie dem User verborgen bleiben sollen. Er hat nur Zugriff auf die Methode, die die gewünschten Daten ausgibt.