Die Aufgabe
Aufgabe 10.1
Schreiben Sie ein Java-Programm A10_1, welches zunächst ein unsortiertes eindimensionales Zahlenarray a aus der Datei eingabe_10_1.txt einliest. Es folgt dann eine Abfrage, ob das Array aufsteigend oder absteigend sortiert werden soll. Zum Sortieren verwenden Sie zwei Methoden sortUp und sortDown, die sie in der Klasse Sort (Datei Sort.java) hinterlegen, weil damit zu rechnen ist, dass die beiden Sortiermethoden auch in anderen Programmen benötigt werden. Achten Sie darauf, dass die beiden Sortiermethoden hinsichtlich der Länge des Arrays flexibel sind.
Hinweis: Zur Realisierung der beiden Methoden können Sie sich an Ihrer Lösung der Aufgabe 8.1 orientieren.
Die Datei eingabe_10_1.txt gehört zum Blatt. Sie enthält eine Zeile:
3 16 7 22 9 5 13 1 4 8
Gebraucht werden zwei Dateien. Sort.java enthält nur die beiden Sortiermethoden sortUp (aufsteigend, die kleinste Zahl zuerst) und sortDown (absteigend, die größte zuerst). A10_1.java ist das Hauptprogramm: einlesen, fragen, sortieren lassen, ausgeben.
„Flexibel hinsichtlich der Länge“ heißt: Die Methoden dürfen nicht mit 10 Zahlen rechnen. Sie müssen für jedes Array funktionieren, auch für eines mit 5 oder 1000 Zahlen.
Sort.sortUp(a).- Die Klasse Sort anlegen.
- Den Kopf von sortUp schreiben.
- Die zwei Schleifen von „Sortieren durch Vertauschen“.
- Nachbarn vergleichen und tauschen.
- Alle Durchläufe am Beispiel.
- sortDown: nur der Vergleich ändert sich.
- Im Hauptprogramm die Zahlen in der Datei zählen.
- Das Array anlegen und füllen.
- Eine Methode zum Ausgeben.
- Fragen und sortieren lassen.
- Testläufe, auch mit einer anderen Länge.