MINT üben

Reihungen von Objekten

Dreißig Übungen zu Reihungen von Objekten — leere Plätze, Alias, Durchläufe und null-Prüfung, von AFB I bis AFB III.

Dein Fortschritt:
0 / 0 Aufgaben
1

Übungsaufgaben

Dreißig Übungen in gemischter Reihenfolge — du klickst, ziehst, ordnest, rechnest und knobelst. Jede Übung gibt dir sofort eine Rückmeldung, und zu jeder Aufgabe gibt es zwei gestufte Tipps: Der erste zeigt die Richtung, der zweite den entscheidenden Schritt. Die Chips zeigen das Anforderungsniveau: AFB I heißt wiedergeben und direkt anwenden, AFB II selbst entscheiden und verknüpfen, AFB III begründen, beurteilen oder eine Falle durchschauen. Aufgaben mit dem Chip Mix verbinden Wissen aus früheren Unterkapiteln, bei Trick steckt eine Falle drin. Fährst du über ein unterstrichenes Arbeitswort, siehst du, was es genau von dir verlangt.

A1
Was ändert sich im Bücherregal?
AFB I

Die Schulbibliothek verwaltet ihr Regal mit Buch[] regal = new Buch[20];. Einige Plätze sind belegt, die übrigen sind null. Gib für jedes Ereignis an, wie sich die Größen ändern: steigt, sinkt oder bleibt gleich.

Setze in jede Zelle einen Pfeil: ↑ steigt, ↓ sinkt, → bleibt gleich. Ein Klick dreht den Pfeil weiter; mit der Tastatur Tab zur Zelle, dann ↑, ↓ oder →. Unter der Tabelle steht deine Wahl als Satz.
GrößeBuch dazuausgeliehen
Plätze insgesamt
belegte Plätze
Plätze mit null
belegt plus null

Die Reihung hat von Anfang an 20 Plätze, das ändert sich nie. Ein Buch auf einen freien Platz zu stellen belegt einen Platz mehr und lässt einen null-Platz weniger übrig. Beim Ausleihen ist es umgekehrt. Belegte Plätze und null-Plätze ergeben zusammen immer die Länge.
Zähle in einem Beispiel mit kleinen Zahlen: Wie viele der 20 Plätze sind belegt, wie viele sind null?
Jeder Platz ist entweder belegt oder null. Wenn ein Wert um 1 steigt, sinkt der andere um 1, und ihre Summe bleibt die Länge der Reihung.
A2
Der Solarpark auf dem Schuldach
AFB II

Auf dem Schuldach sind Plätze für sechs Solarmodule. Die Klasse Modul hat getLeistung() (in Watt), defektMelden() und istDefekt(). Die Bedingung in der Schleife verknüpft zwei Teilbedingungen.

Modul[] park = new Modul[6];
park[0] = new Modul(320);
park[1] = new Modul(410);
park[3] = new Modul(380);
park[4] = new Modul(290);
park[4].defektMelden();

int summe = 0;
for (int i = 0; i < park.length; i++) {
    if (park[i] != null && !park[i].istDefekt()) {
        summe = summe + park[i].getLeistung();
    }
}

Ermittle den Wert von summe nach der Schleife (in Watt).

Rechne selbst und trage das Ergebnis ein — Enter prüft direkt.
Gezählt werden nur Plätze, an denen ein Modul steht und das Modul nicht defekt ist: 320 + 410 + 380 = 1110. Platz 4 fällt wegen des Defekts heraus, die Plätze 2 und 5 sind leer. Wichtig ist die Reihenfolge der Teilbedingungen: Bei && wird die rechte Seite nur ausgewertet, wenn die linke wahr ist. Stünde !park[i].istDefekt() vorn, gäbe es an Platz 2 eine NullPointerException. Häufige Fehler: 1400 (Defekt übersehen) oder 290 (das Ausrufezeichen übersehen — dann zählte ausgerechnet nur das defekte Modul).
Ansatz: Gehe die sechs Plätze einzeln durch: Ist der Platz belegt? Ist das Modul in Ordnung?
Weiter: Nur park[4] ist defekt. Die Plätze 2 und 5 sind null und werden durch die erste Teilbedingung übersprungen.
A3
Eier im Hofladen
AFB IIMix

Ein Hofladen zählt seine Eierkartons in der Reihung Karton[] k. Die Klasse Karton hat die Methode getEier(). Die vier Kartons enthalten der Reihe nach 7, 4, 9 und 5 Eier. Alle Rechnungen verwenden ganze Zahlen.

A: k[0].getEier() / 2
B: k[2].getEier() % 4
C: (k[1].getEier() + k[3].getEier()) / 2
D: k[2].getEier() / k[1].getEier()

Vergleiche die vier Ausdrücke: Klicke in jedem Duell den Ausdruck an, dessen Wert größer ist.

Immer zwei Karten treten gegeneinander an: Klicke die Karte mit dem größeren Wert an — mit der Tastatur Tab bzw. ←/→ zur Karte, Enter wählt. Die Sieger rücken im Turnierbaum vor; „Duell zurück“ nimmt die letzte Entscheidung zurück. Erst „Turnier prüfen“ verrät, wie viele Duelle falsch entschieden sind — dann geht es mit einer neuen Auslosung weiter.

A: 7 / 2 = 3, denn die Division ganzer Zahlen schneidet den Rest ab. B: 9 % 4 = 1, der Rest der Division. C: (4 + 5) / 2 = 9 / 2 = 4. D: 9 / 4 = 2. Im ersten Duell gewinnt A gegen B, im zweiten C gegen D, im Finale C mit 4 gegen A mit 3.
Rechne jeden Ausdruck einzeln aus: Zuerst holt getEier() die Zahl aus dem Karton, dann wird gerechnet.
Bei ganzen Zahlen gibt die Division nur den ganzzahligen Anteil, der Rest bleibt weg. Das Zeichen % liefert genau diesen Rest.