Beruflich Dokumente
Kultur Dokumente
Prog1 Tut Exercise 5
Prog1 Tut Exercise 5
Programmierung I
Die Wiese wird durch die Klasse Meadow dargestellt und besteht aus einer Instanz der
Klasse Goat und einem int[][] Array namens meadow, welches die Wiese an sich be-
schreibt. Die Werte im Array meadow geben die Höhe des Grases an der entsprechenden
Stelle auf der Wiese an. Teile der Implementierung der Klasse Meadow sind bereits vor-
gegeben.
welche eine zufällige Wiese erzeugt. Erstellen Sie hierzu ein int[][] mit height
int[]) und width Spalten. Initialisieren Sie dann alle Zellen
Zeilen (jede Zeile ist ein
des Arrays mit zufälligen Werten zwischen 1 und 10 (beide Grenzen einschlieÿlich).
Zufällige Integer-Werte können mit der Methode int nextInt(int bound) der
(von Java mitgelieferten) Klasse Random erzeugt werden. Benutzen Sie die in Meadow
bereits vorhandene Instanz rng von Random.
welche einen Tag im Leben der Ziege simuliert. Jeder Tag hat den folgenden Ablauf:
1
1) Die Ziege betrachtet die 9 Array-Zellen, deren Zentrum ihr Standort ist (d. h. ihre
eigene Zelle und die 8 Nachbarzellen horizontal, vertikal und diagonal). Sie wählt
die Zelle aus, die den höchsten Wert enthält. Die Ziege betrachtet nur Zellen auf
der Wiese, d. h. am Rand ist darauf zu achten, dass die Grenzen des Arrays nicht
überschritten werden.
2) Falls in der gewählten Zelle kein Wert gröÿer als 0 steht, stirbt die Ziege und die
Methode endet. Andernfalls bewegt sich die Ziege in die gewählte Zelle.
3) Die Ziege frisst 30 Graseinheiten aus der Zelle auf der sie nun steht. Hierbei kann
der Wert der Zelle auch negativ werden.
4) Auf allen anderen Zellen der Wiese wächst das Gras um 0 bis 2 Graseinheiten (zu-
fälliger Wert für jede Zelle).
4 3 3 4 4 4 5 5
6 2 −12 3 7 2 −10 4
−1 6 5 7 −1 7 6 9
1 2 7 0 2 4 −23 1
Die Ziege bewegt sich nach rechts unten und frisst dort 30 Einheiten Gras. Überall sonst
wächst das Gras.
4 2 3 7
3 5 −12 1
−1 −5 5 7
−10 0 7 0
2
Aufgabe 24: Sortierte Listen zusammenfügen
Erstelle eine Methode static List<Integer> mergeSortedLists(List<Integer> first,
List<Integer> second), welche zwei sortierte Listen als Parameter nimmt und eine zu-
sammengefügte sortierte Liste zurückgibt. Ist eine der beiden übergebenen Listen leer,
wird die andere zurückgegeben. Bedenke, dass die Listen unterschiedliche Länge haben
können. Beispiel: ([1,3,5,7],[2,4,6,8,9,10]) => [1,2,3,4,5,6,7,8,9,10]
1
https://docs.oracle.com/en/java/javase/13/docs/api/java.base/java/lang/Comparable.html