Hallo, ich bin grade bei folgender Aufgabe:
Schreiben Sie eine Applikation LogUndRunden. Die Applikation soll zwei
Methoden enthalten.
Die erste Methode soll den Logarithmus einer Zahl zu einer beliebigen Basis,
die der Methode als Parameter zu übergeben sind, berechnen.
Die zweite Methode soll eine beliebige Gleitkommazahl auf eine gewünschte Anzahl Nachkommastellen runden. Die Gleitkommazahl und die Anzahl der
Nachkommastellen sollen der Methode als Parameter übergeben werden.
a) Berechnen Sie log10 13, log2 10 und loge 25!
b) Runden Sie 13,0 / 3,5 = 3,7142857 … auf 2, 3 und 4
Nachkommastellen!
Wählen Sie für Ihre Variablen geeignete Datentypen.
Lesen Sie die Werte mit JOptionPane ein.
Hinweis 1: Die Berechnung des Logarithmus einer beliebigen Zahl zu einer
beliebigen Basis lässt sich wie folgt realisieren:
Logarithmus der Zahl / Logarithmus der beliebigen Basis!
Hinweis 2: Die Zahl e lautet 2,718281828…!
Hinweis 3: Nutzen Sie zum Runden die Methoden round() und pow() der Klasse Math.
Ich bin noch nicht fertig, jedoch wollte ich fragen, ob ihr mir vielleicht sagen könnt, woher die Fehlermeldungen kommen.
- invalid method declaration; return type required
- cannot return a value from method whose result type is void
Ich denke der 1. Fehler kommt daher, weil die return Anweisung schon falsch ist, aber wieso?
import javax.swing.JOptionPane;
public class Main {
public static void main(String[] args) {
String eingabe1, eingabe2, eingabe3;
double zahl;
double basis;
char zeichen = ‚e‘;
double ergebnis;
eingabe1 = JOptionPane.showInputDialog(„Bitte geben Sie die Zahl des Logarithmus an“);
zahl = Double.parseDouble(eingabe1);
eingabe2 = JOptionPane.showInputDialog(„Bitte geben Sie die Basis des Logarithmus an“);
basis = Double.parseDouble(eingabe1);
if (basis == ‚e‘) {
basis = 2.718281828;
}
}
public static berechneLogarithmus(double zahl, double basis) {
return Math.log(zahl) / Math.log(basis);
}
}