MINT lernen

Verzweigungen und Schleifen

Die Logik kennst du aus Python — nur die Schreibweise ist strenger. Aber wie oft läuft eine Schleife wirklich?

1

Verzweigungen

int punkte = 17;
if (punkte >= 20) {
    System.out.println("Sehr gut");
} else if (punkte >= 10) {
    System.out.println("Bestanden");     // wird ausgegeben
} else {
    System.out.println("Nochmal üben");
}
  • Bedingung:steht in runden Klammern: if (punkte >= 20); der Block folgt in { }.
  • else if:ersetzt Pythons elif; else fängt alles Übrige auf.
  • Vergleiche:==, !=, <, <=, >, >= — wie in Python.
  • Logik:&& (und), || (oder), ! (nicht) statt and, or, not.
  • Strings:Inhalte vergleichst du mit name.equals("Lea"), nicht mit ==.
2

Schleifen

  • while:while (x < 100) { x = x * 2; } — läuft, solange die Bedingung wahr ist.
  • for:for (int i = 0; i < 5; i++) — Start; Bedingung; Schritt, getrennt durch ;.
  • Kurzformen:i++ erhöht um 1, i += 3 um 3, i-- verringert um 1.
  • Ablauf:Start einmal → Bedingung prüfen → Rumpf → Schritt → wieder Bedingung … bis sie falsch ist.

Herleitung:

for i in range(2, 10, 3):
| zerlegen
Start: die Python-Schleife mit Start 2, Grenze 10 (nicht mehr dabei) und Schritt 3.
i = 2 · i < 10 · i += 3
| in den Kopf
Die Grenze gehört nicht dazu, deshalb < und nicht <=.
for (int i = 2; i < 10; i += 3)
Ergebnis
i nimmt die Werte 2, 5 und 8 an — genau wie in Python.

Stelle Start, Grenze und Schritt ein (Grenze auch direkt am Zahlenstrahl ziehen) und wickle die Schleife mit „Schritt“ oder ▶ ab. Die farbige Markierung im Kopf zeigt, welcher Teil gerade läuft; die Papierrolle protokolliert jeden Durchlauf.

Die Schleife abwickeln

Nr.iPrüfungAusgabedanach

        
0 Durchläufe des Rumpfs

Halte fest: Der Start läuft einmal, die Bedingung wird vor jedem Durchlauf geprüft. Ist sie gleich zu Beginn falsch, läuft der Rumpf nie. Führt der Schritt nicht auf die Grenze zu, wird die Bedingung nie falsch — eine Endlosschleife.

Merke

for-Schleife: for (Start; Bedingung; Schritt) { Rumpf } — der Rumpf läuft, solange die Bedingung vor dem Durchlauf wahr ist.

3

Allgemeine Hinweise

= ist nicht ==

if (x = 5) ist eine Zuweisung. javac meldet: incompatible types: int cannot be converted to boolean.

Kein ; nach dem Kopf

if (x > 5); beendet die Anweisung sofort — der Block dahinter läuft dann immer. Ebenso hat for (…); einen leeren Rumpf.

Grenzen durchspielen

Mit < ist die Grenze ausgeschlossen, mit <= eingeschlossen. Setze den letzten Wert von i ein und prüfe die Bedingung von Hand.

Videos