Guten Abend liebe Community,
ich komme mal direkt zu meinem Problem und daher die Aufgabestellung:
Zu entwickeln ist eine Methode statistiken(), die den Nutzer immer wieder zur Eingabe
einer Fließkommazahl (double) auffordert, die immer zwischen -100.0 und 100.0 liegt (muss geprüft werden, falsche Werte ignorieren) und die nach jeder Eingabe den kleinsten und den größten bisher eingegebenen Wert sowie den Mittelwert (Durchschnitt aller eingegebenen Werte) ausgibt. Überlegen Sie, welche Informationen man in lokalen Variablen speichern muss (man muss sich nicht alle Zahlen merken). Das Programm wird mit der Eingabe der Zahl -1 terminiert. Ein Nutzungsdialog kann wie folgt aussehen.
Beispiel-Ergebnis:
Geben Sie einen Wert ein: 24
Minimum: 24.0 Maximum: 24.0 Schnitt: 24.0
Geben Sie einen Wert ein: 22
Minimum: 22.0 Maximum: 24.0 Schnitt: 23.0
Geben Sie einen Wert ein:
Mein Code:
Mein Problem:
Ich gebe also immer mit Hilfe der IO.readDouble eine Zahl ein die auch gespeichert wird und bei der ersten Reihe dann überall eingesetzt wurde. Aber führe ich die Anwendung nochmal aus kommt das gleiche Ergebnis von der Zahl die ich vorher eingegeben habe und auch ohne Änderung der Werte.
Kann mir jemand helfen, was ich hier ändern muss?
Schon mal besten Dank im Voraus.
CaptainMortey
ich komme mal direkt zu meinem Problem und daher die Aufgabestellung:
Zu entwickeln ist eine Methode statistiken(), die den Nutzer immer wieder zur Eingabe
einer Fließkommazahl (double) auffordert, die immer zwischen -100.0 und 100.0 liegt (muss geprüft werden, falsche Werte ignorieren) und die nach jeder Eingabe den kleinsten und den größten bisher eingegebenen Wert sowie den Mittelwert (Durchschnitt aller eingegebenen Werte) ausgibt. Überlegen Sie, welche Informationen man in lokalen Variablen speichern muss (man muss sich nicht alle Zahlen merken). Das Programm wird mit der Eingabe der Zahl -1 terminiert. Ein Nutzungsdialog kann wie folgt aussehen.
Beispiel-Ergebnis:
Geben Sie einen Wert ein: 24
Minimum: 24.0 Maximum: 24.0 Schnitt: 24.0
Geben Sie einen Wert ein: 22
Minimum: 22.0 Maximum: 24.0 Schnitt: 23.0
Geben Sie einen Wert ein:
Mein Code:
Java:
public static void statistiken () {
double a = IO.readDouble("Geben Sie einen Wert ein: ");
double b = a;
double c = a;
double d = a;
do {
if (a<=b) {
a = b;
} else {
b = b;
}
if (a>=c) {
a = c;
} else {
c = c;
}
d = (b/2) + (c/2);
System.out.println("Minimum: " + b + " Maximum: " + c + " Schnitt: " + d );
a = IO.readDouble("Geben Sie einen Wert ein: ");
} while (a<= 100 && a>=-100);
}
Mein Problem:
Ich gebe also immer mit Hilfe der IO.readDouble eine Zahl ein die auch gespeichert wird und bei der ersten Reihe dann überall eingesetzt wurde. Aber führe ich die Anwendung nochmal aus kommt das gleiche Ergebnis von der Zahl die ich vorher eingegeben habe und auch ohne Änderung der Werte.
Kann mir jemand helfen, was ich hier ändern muss?
Schon mal besten Dank im Voraus.
CaptainMortey