Übungen zur Lehrveranstaltung
"Programmierkurs Java"
WS 2000/2001

FB Informatik
D. Boles
Übungsblatt 8
Ausgabe: 06.12.2000
Hinweise: Zur Lösung der Aufgaben dürfen nur Konzepte benutzt werden, die in der Vorlesung schon behandelt worden sind.
Aufgabe 30 (Arrays): 40 Punkte
Bei dieser Aufgabe sollen Sie einen einfachen Fahrtroutenplaner implementieren (dieser wird auf dem nächstem Aufgabenblatt erweitert!). Stellen Sie sich dazu ein Netz von Städten vor, das durch Straßen miteinander verbunden ist. Schreiben Sie ein Programm, was genau folgendes tut:
Beispiel:
5
O(ldenburg) B(remen) H(amburg) F(rankfurt) M(ünchen)
3
O B
B H
B F
O H (Ausgabe: Verbindung existiert)
F O (Ausgabe: Verbindung existiert)
H M (Ausgabe: keine Verbindung)
Aufgabe 31 (Arrays): 30 Punkte
Schreiben Sie ein Java-Programm, das das Solitaire-Spiel löst (siehe auch Aufgabe 28). Die Abbildung skizziert das Spielfeld in der Ausgangssituation. Es ist ein Ein-Personen-Spiel. Ein Spielzug sieht so aus, dass der Spieler jeweils eine beliebige Figur auswählt, bei der ein Nachbarfeld besetzt und das dahinterliegende Feld frei ist. Der Spieler nimmt die Figur, platziert sie auf dem freien Feld und entfernt die übersprungene Figur vom Spielfeld. Ziel des Spiels ist es, eine Folge von Spielzügen zu finden, so dass zum Schluss nur noch eine einzige Spielfigur auf dem Spielfeld vorhanden ist.
Ihr Programm soll eine solche Folge finden und die Spielzüge der Folge ausgeben.
Aufgabe 32 (Arrays): 30 Punkte
Implementieren Sie folgende Funktionen:
Beispiel: f([1,4,3], [1, 4, 3]) == true
Beispiel: f([1], [1,3,4], [2, 3]) == [[1], [1, 3, 4], [2, 3]]
Beispiel: f([1], [1,3,4], [2, 3]) == [[1], [1, 3, 4], [2, 3]]
Beispiel: f([1,4,1],[2,2,2],[3,0,3]) == true
#
# #
# ###
######
312241
