import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Arrays;
public class Median {
public static void main(String[] args) {
//Begrüßungstext ausgeben
System.out.println("Willkommen zur Berechnung des Median!(in Java ;)");
//Objekt instanzieren, damit eine Texteingabe ermöglicht wird
BufferedReader eingabe = new BufferedReader (new InputStreamReader(System.in));
//Anzahl der Werte erfragen
System.out.println("Wie viele Zahlen wollen Sie eingeben? ");
int anzahl = 0;
try {
anzahl = Integer.parseInt(eingabe.readLine());
} catch (NumberFormatException e) {
System.out.println("Fehler: Number Format Exception");
} catch (IOException e) {
System.out.println("Fehler: IOException");
}
//Array instanzieren
int zahlenarray[] = new int[anzahl];
//Eingabe der Zahlen mit einer FOR-Schleife
for (int i = 0; i < anzahl; i++ ){
try {
System.out.println("Geben Sie die "+(i+1)+". Zahl ein:");
zahlenarray[i]= Integer.parseInt(eingabe.readLine());
} catch (NumberFormatException e) {
System.out.println("Fehler: Number Format Exception");
} catch (IOException e) {
System.out.println("Fehler: IOException");
}
}
//der Array wird sortiert
Arrays.sort(zahlenarray);
//mit einer IF-Bedingung wird die Anzahl der Werte überprüft
//und anschließend der Median berechnet
double median = 0;
if (anzahl % 2 != 0) {
median = zahlenarray[(anzahl)/2];
} else {
median =(zahlenarray[anzahl/2-1]+zahlenarray[anzahl/2])/2;
}
//Ausgabe des Medians
System.out.println("Der Median beträgt "+median);
}
}
|