Unterrichtsbaustein · Detail

Caesar-Verschlüsselung in Python

Dieser Baustein führt in grundlegende Konzepte der Verschlüsselung sowie der Zeichenverarbeitung in Python ein. Er verbindet algorithmisches Denken mit der Umsetzung mathematischer Operationen in einer funktionalen Struktur.

Zeit 35 min
Format Compact
Sprache Python 3
Aufgaben 1
Vorschaubild: Caesar-Verschlüsselung (A–Z) in Python

Einführung (Originalauszug)

Du programmierst eine Funktion caesar_encrypt(text, key), die einen Text in Geheimschrift umwandelt. Dabei werden nur Großbuchstaben A–Z um key Stellen zyklisch verschoben (also nach Z geht es wieder bei A weiter). Alle anderen Zeichen (z. B. Leerzeichen, Punkt, Komma, Ziffern) bleiben unverändert.

Didaktische Einordnung

Fachliche Zielsetzung

Der Baustein führt in die grundlegende Funktionsweise einfacher Verschlüsselungsverfahren ein und verbindet diese mit zentralen Konzepten der Programmierung. Im Mittelpunkt steht die Umsetzung einer Caesar-Verschlüsselung, bei der Zeichen systematisch transformiert werden. Dabei wird die Abbildung von Zeichen auf Zahlen mithilfe von ord() und chr() genutzt und durch Modulo-Arithmetik eine zyklische Verschiebung realisiert. Die Lernenden strukturieren den Algorithmus als Funktion und wenden ihn auf Zeichenketten an. Die Verbindung von mathematischem Modell (Zahlenraum 0–25) und konkreter Implementierung wird dabei explizit hergestellt.

Kompetenzentwicklung

Didaktischer Mehrwert im Unterricht

Ablauf der Unterrichtseinheit

1

Caesar verschlüsseln: Funktion fertigstellen

In diesem Schritt wird die zentrale Funktion zur Caesar-Verschlüsselung implementiert. Dabei werden ausschließlich Großbuchstaben transformiert, während alle anderen Zeichen unverändert übernommen werden. Die Aufgabe fokussiert die korrekte Umsetzung der zyklischen Verschiebung sowie die strukturierte Verarbeitung eines Textes Zeichen für Zeichen.

  • Didaktischer Schwerpunkt: Verbindung von Zeichenverarbeitung und Modulo-Arithmetik
  • Typische Herausforderung: korrekte Umsetzung der zyklischen Verschiebung und Fallunterscheidung

Arbeitsauftrag (Auszug)

1. Funktion zur Verschlüsselung von Großbuchstaben A–Z implementieren
2. Alle anderen Zeichen unverändert übernehmen
3. Zyklische Verschiebung mit Modulo 26 korrekt umsetzen
4. Ergebnisse anhand von Testfällen überprüfen

Beispiel (Ausschnitt)

1
2
3
4
5
6
base = ord('A')
for ch in text:
    if 'A' <= ch <= 'Z':
        pos = ord(ch) - base
        new_pos = (pos + key) % 26
        result += chr(base + new_pos)

Dieses Fragment verdeutlicht die zentrale Transformation von Zeichen über numerische Repräsentationen und Modulo-Arithmetik.

Hinweise für die Unterrichtspraxis

Dieser Baustein verbindet algorithmische Verschlüsselung mit systematischer Zeichenverarbeitung und schafft eine klare Grundlage für nachvollziehbare Implementierungen.

Die klare Struktur der Aufgabe unterstützt eine zielgerichtete Umsetzung und erleichtert die Organisation sowie die Sicherung der Ergebnisse im Unterricht.

Fordern Sie einen Demo-Zugang an und erproben Sie den Baustein im eigenen Kurskontext.