Informatik

Verzweigungen

Verzweigungen ermöglichen es deinem Programm, Entscheidungen zu treffen! Je nach Bedingung wird ein anderer Programmteil ausgeführt.

Alltags-Beispiel: Wenn es regnet, nehme ich einen Regenschirm mit. Wenn es nicht regnet, gehe ich ohne Regenschirm.

In der Programmierung können wir solche Entscheidungen mit if-Anweisungen umsetzen.

In Java gibt es zwei Hauptarten von Verzweigungen:

  1. Bedingte Anweisung (if, else)
  2. Fallunterscheidung (switch)

Die if-Anweisung

Die if-Anweisung führt Code nur aus, wenn eine Bedingung erfüllt ist.

Grundform

if (Bedingung) {
    // Code, der ausgeführt wird, wenn die Bedingung wahr ist
}

Beispiel 1: Einfache Bedingung

Aufgabe: Ändere das Alter auf verschiedene Werte und beobachte die Ausgabe!

if-else: Zwei Möglichkeiten

Mit else können wir festlegen, was passiert, wenn die Bedingung NICHT erfüllt ist:

if-else if-else: Mehrere Möglichkeiten

Für komplexere Entscheidungen können wir mehrere Bedingungen verknüpfen:

Vergleichsoperatoren

Für Bedingungen brauchst du Vergleichsoperatoren:

Wichtig:

  • Für Zahlen: ==, !=, >, <, >=, <=
  • Für Strings: Immer .equals() verwenden, nie ==!

Logische Operatoren

Du kannst mehrere Bedingungen miteinander verknüpfen:

Praktisches Beispiel: Login-System

Der Modulo-Operator (%)

Mit dem Modulo-Operator kannst du den Rest einer Division berechnen:

Übung: Schaltjahr berechnen

Ein Jahr ist ein Schaltjahr, wenn:

  • Es durch 4 teilbar ist, UND
  • Es NICHT durch 100 teilbar ist, ODER
  • Es durch 400 teilbar ist

Beispiele: 2020 (Schaltjahr), 1900 (kein Schaltjahr), 2000 (Schaltjahr)

if ((jahr % 4 == 0 && jahr % 100 != 0) || (jahr % 400 == 0)) {
    System.out.println(jahr + " ist ein Schaltjahr");
} else {
    System.out.println(jahr + " ist kein Schaltjahr");
}

Die switch-Anweisung

Für viele aufeinanderfolgende if-else if-Abfragen gibt es eine elegantere Lösung:

Wichtig bei switch:

  • Vergiss nicht das break; nach jedem Fall!
  • default wird ausgeführt, wenn kein Fall passt

Teste-Dich-Projekt 1: Taschenrechner

Erstelle einen einfachen Taschenrechner, der:

  • Zwei Zahlen einliest
  • Eine Operation (+, -, *, /) einliest
  • Das Ergebnis berechnet und ausgibt
  • Bei Division durch 0 eine Fehlermeldung ausgibt

Testfälle

  • 10 + 5 = 15
  • 8 - 3 = 5
  • 4 * 6 = 24
  • 15 / 3 = 5
  • 10 / 0 = Fehlermeldung

Teste-Dich-Projekt 2: Ampelschaltung

Simuliere eine Ampelschaltung:

  • Eingabe: Aktueller Zustand der Ampel ("rot", "gelb", "grün")
  • Ausgabe: Nächster Zustand und was zu tun ist

Ampelreihenfolge: rot → rot-gelb → grün → gelb → rot

Erweiterte Aufgabe:

  • Erstelle eine Fußgängerampel, die parallel zur Autoampel läuft
  • Baue einen Timer ein, der automatisch alle 3 Sekunden schaltet
  • Implementiere einen "Anforderungsknopf" für Fußgänger
Verzweigungen