Station - Fallunterscheidung
Beispiel: erstes Zeichen eines Wortes entfernen
In Zeichenkette soll das erste Zeichen entfernt werden. Aus 'TOR' soll so 'OR' erzeugt werden. Wenn die Zeichenkette leer ist, dann soll die Zeichenkette unverändert bleiben.
Imperativer Ansatz
Die Lösung des Problems ist ganz einfach:
WENN das Wort Zeichen enthält: entferne das erste Zeichen SONST: tue nichts
Man kann sie implementieren, indem man geeignete Variablen zur Verwaltung der Daten einführt und Zuweisungen mit Zeichenkettenoperationen zur Verarbeitung der Daten benutzt.
# Eingabe wort = input('Wort: ') # Verarbeitung if len(wort) > 0: wort = wort[1:] # Ausgabe print(wort)
Funktionaler Ansatz
Eine funktionale Lösung des Problems benutzt ebenfalls eine Fallunterscheidung:
def ohneErstesZeichen(wort): if wort != '': return wort[1:] else: return wort
Fallunterscheidung
Bei einer Funktionsdefinition mit Fallunterscheidung werden die Funktionswerte für verschiedene Fälle (evtl. unterschiedlich) festgelegt.
Aufgabe 1
Löse die folgenden Probleme mit geeigneten Hilfsfunktionen. Dabei soll auch berücksichtigt werden, dass das Ausgangswort eventuell keine Zeichen enthält.
(a) In einer nicht-leeren Zeichenkette soll das letzte Element ganz an an den Anfang der Zeichenkette gesetzt werden. Aus 'ORT' soll so 'TOR' erzeugt werden.
(b) In einer nicht-leeren Zeichenkette soll das erste mit dem letzten Zeichen ausgetauscht werden. Aus 'TOR' soll so 'ROT' erzeugt werden.