Materialien zum Unterricht

Arten von Funktionen

Iterative Funktionen

Iterative Funktionen - Definition

Eine iterative Funktion wiederholt einen Codeblock mit einer Schleife, bis eine festgelegte Bedingung erreicht ist.

Iterative Funktionen - Merkmale

Iterative Funktionen - Beispiel


Rekursive Funktionen

Rekursive Funktionen - Definition

Eine rekursive Funktion ruft sich selbst auf, bis eine Abbruchbedingung erreicht ist
– dann löst sie die Aufrufe rückwärts auf.

Rekursive Funktionen - Merkmale

Rekursive Funktionen - Anwendung

Rekursive Funktionen - Beispiel

Rekursive Funktionen - Ablauf am Beispiel

Die Funktion summe_rekursiv(n) wird mit einer Zahl n aufgerufen.

Innerhalb dieser Funktion ruft sich die Funktion selbst mit n - 1 auf.

Dieser Prozess wiederholt sich, bis sie die Abbruchbedingung erreicht wird:

summe_rekursiv(5) → 5 + summe_rekursiv(4) summe_rekursiv(4) → 4 + summe_rekursiv(3) summe_rekursiv(3) → 3 + summe_rekursiv(2) summe_rekursiv(2) → 2 + summe_rekursiv(1) summe_rekursiv(1) → 1 + summe_rekursiv(0) summe_rekursiv(0) → 0 (Abbruchbedingung erreicht)

Nachdem die Abbruchbedingung erreicht wurde, werden die Rückgaben von unten nach oben aufgelöst:

summe_rekursiv(0) → 0 summe_rekursiv(1) → 1 + 0 = 1 summe_rekursiv(2) → 2 + 1 = 3 summe_rekursiv(3) → 3 + 3 = 6 summe_rekursiv(4) → 4 + 6 = 10 summe_rekursiv(5) → 5 + 10 = 15

Rekursive Funktionen - Übungen

  1. Fibonacci-Zahlen
    Implementiere eine rekursive Funktion, die die n-te Fibonacci-Zahl berechnet.
    Beispiellösung Fibonacci
    Lösung ab 15:15 Uhr hier sichtbar


  2. Potenz berechnen
    Implementiere eine rekursive Funktion, um a^b zu berechnen.
    Beispiellösung Potenz berechnen
    Lösung ab 15:15 Uhr hier sichtbar


  3. Umkehren eines Strings (Profis)
    Schreibe eine rekursive Funktion, die einen gegebenen String umkehrt.
    Beispiellösung Umkehren eines Strings
    Lösung ab 15:15 Uhr hier sichtbar

Abschlussaufgabe

Schreibe eine rekursive Funktion, die die Fakultät einer Zahl n berechnet.

Die Zahl soll zu Beginn von der Konsole eingelesen werden.

Das Ergebnis soll auf der Kosnole ausgegeben werden.

Bei Sonderfällen soll das Programm vorher abbrechen.

Beispiellösung Fakultät
Lösung ab 15:15 Uhr hier sichtbar