MINT üben

Verzweigungen und Schleifen

Dreißig Übungen zu Verzweigungen und Schleifen — von if und else bis for und while.

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
Eintrittspreis im Kino
AFB II

Kinder unter 6 Jahren sind frei. Am Kinotag (Dienstag) zahlen alle anderen 5 €. Sonst zahlen Jugendliche unter 18 Jahren 7 € und Erwachsene 10 €. Erstelle die Preisberechnung, indem du die Lücken füllst — zwei Bausteine bleiben übrig.

Wort anklicken, dann Lücke anklicken (oder umgekehrt) — mit Tab und Enter geht es genauso. Ein Klick auf eine gefüllte Lücke legt das Wort zurück.

(alter < 6) {
    preis = 0;
} (tag.("Dienstag")) {
    preis = 5;
} else if (alter 18) {
    preis = 7;
} {
    preis = 10;
}

elif ist Python, in Java heißt es else if. == bleibt übrig, weil Texte mit equals verglichen werden: == prüft bei Strings nur, ob es dasselbe Objekt ist — das kann bei einem eingelesenen „Dienstag“ falsch sein, obwohl die Buchstaben gleich sind. Die Reihenfolge der Zweige ist wichtig: Java nimmt den ersten passenden. Stünde die Dienstags-Prüfung vor alter < 6, müssten Kleinkinder dienstags zahlen.
Ansatz: Eine Kette beginnt mit if, hat beliebig viele else if und endet mit else ohne Bedingung.
Weiter: Mit welcher Methode vergleicht man in Java zwei Texte?
A2
Stimmt die Aussage?
AFB IIMix

Bestätige jede Aussage, oder verwirf sie.

Schiebe die oberste Karte auf den passenden Stapel: ziehen, einen der beiden Stapel-Knöpfe drücken oder auf der Karte ←/→. Eine abgelegte Karte holst du mit Klick oder Enter zurück. „Prüfen“ schickt falsch abgelegte Karten mit einem Hinweis zurück in den Stapel.
Bei int x ist if (x = 5) ein Fehler beim Übersetzen.
Ein Fehler in der letzten Zeile verhindert, dass die erste Verzweigung läuft.
System.out.println(7 / 2); gibt 3,5 aus.
for (int i = 0; i < 3; i++) gibt i die Werte 0, 1 und 2.
if (s == "ja") ist immer ein Übersetzungsfehler.
Ist die Bedingung einer Schleife gleich zu Beginn falsch, läuft der Rumpf einmal.
Die Zuweisung x = 5 ist keine Bedingung. javac prüft die ganze Datei vorab. 7 / 2 ergibt 3, und die Schleife zählt 0, 1, 2. Mit == vergleicht man Texte nicht zuverlässig, aber es wird übersetzt. Ist die Bedingung am Anfang falsch, läuft der Rumpf nie.
Ansatz: Entscheide, ob die Aussage zum Übersetzen, zu den Datentypen oder zu Schleifen und Verzweigungen gehört.
Weiter: Denke an die Ganzzahldivision, an javac und an die Prüfung der Bedingung vor dem ersten Durchlauf.
A3
Den Kopf der for-Schleife lesen
AFB I

Gib an, was an den nummerierten Markern steht: Hefte jedes Etikett an den passenden Marker. Zwei Etiketten bleiben übrig.

Wähle oben ein Etikett und klicke dann auf den passenden Marker im Bild oder in der Liste darunter. Mit der Tastatur: Tab zum Etikett, dann die Ziffer des Markers (1–5) drücken. Ein Klick auf einen beschrifteten Marker löst sein Etikett wieder. Nicht jedes Etikett wird gebraucht.
for (int i = 0; i < 5; i++) { System.out.println(i);
    Der Kopf hat drei Teile, getrennt durch Semikolons: Start, Bedingung und Schritt. Die geschweifte Klammer öffnet den Rumpf, der wiederholt wird.
    Ansatz: Der Kopf steht in runden Klammern und hat drei Teile.
    Weiter: Die Teile sind durch Semikolons getrennt; die geschweifte Klammer gehört nicht mehr zu den drei Teilen.