Partielle Funktionsanwendung
Flexibilisierung des Caesar-Verfahrens
Der Überlieferung nach nutzte Caesar zur Verschlüsselung immer eine Verschiebung um drei Buchstaben. Mit Hilfe einer anderen Verschiebezahl, also eines anderen Schlüssels zur Verschlüsselung, kann man das Verfahren flexibilisieren. Wir müssen dazu nur die Zahl 3
durch einen Parameter schluessel
ersetzen:
Aufgabe 1
Erkläre warum wir diese Funktion so nicht direkt anwenden können, um mit Hilfe von
String.map verschiebeZeichen "HALLO"
eine Zeichenkette zu verschlüsseln.Experimente in der REPL
Wir führen wieder einige Experimente in der REPL durch.
Aufgabe 2
Formuliere eine Vermutung welche Ausgabe jeder Ausruck in der REPL bewirkt. Überprüfe deine Vermutung in der REPL.
Aufgabe 3
Schreibe eine Funktion
verschiebeText schluessel klartext
, die einen Text anhand des übergebenen Schlüssels nach dem Caesar-Verfahren verschlüsselt.