Pseudocode
Algorithmen sprachunabhängig notieren – das häufigste Prüfungsthema überhaupt (100%). Der größte Einzel-Punktbringer der AP2.
Lernziele
- Einen Algorithmus in Pseudocode formulieren – sprachunabhängig und prüfungstauglich
- Gegebenen Pseudocode Zeile für Zeile tracen (Schreibtischtest)
- Kontrollstrukturen (Sequenz, Verzweigung, Schleife) korrekt verschachteln
- Typische Konventionen (Einrückung, Doppelpunkt, Großschreibung Schlüsselwörter) einhalten
Kernbegriffe
- Algorithmus
- Endliche, eindeutige Handlungsvorschrift zur Lösung einer Klasse von Problemen, die in endlicher Zeit ein Ergebnis liefert.
- Pseudocode
- Informelle, sprachunabhängige Notation für Algorithmen. Mischung aus natürlicher Sprache und Programmier-Schlüsselwörtern.
- Schreibtischtest
- Manuelles Tracen: Wertetabelle pro Variable, Zeile für Zeile durchgehen und Ausgabe notieren.
1. Was ist Pseudocode?
Pseudocode ist eine programmiersprachen-unabhängige Darstellung eines Algorithmus. Er ist streng genug, um einen Ablauf präzise festzuhalten, aber locker genug, um nicht an der Syntax einer konkreten Sprache zu hängen. In der AP2 ist Pseudocode das Standard-Format, in dem du Lösungsalgorithmen notierst.
Die IHK macht keine starren Formvorgaben, aber diese Konventionen sind üblich und sicher:
- Schlüsselwörter in GROSSBUCHSTABEN:
WENN,SOLANGE,FÜR,GIB… (gleichermaßen erlaubt:if,while, …) - Einrückung macht die Struktur sichtbar – kein Layout-Freestyle
- Zuweisung mit
←oder:=– oder=, wenn der Unterschied zum Vergleich klar bleibt - Blockgrenzen mit
ENDE WENN,ENDE SOLANGE, … - Variablen sprechend benennen – nicht
x, sondernsumme
2. Kontrollstrukturen
Sequenz
Anweisungen in der Reihenfolge ihres Auftretens abarbeiten – der triviale Fall.
Verzweigung
WENN alter >= 18 DANN
GIB "volljährig" aus
SONST WENN alter >= 16 DANN
GIB "begleitetes Fahren" aus
SONST
GIB "minderjährig" aus
ENDE WENNKopfgesteuerte Schleife (WHILE)
Bedingung wird vor dem Schleifenkörper geprüft – Schleife kann 0 mal laufen.
i ← 1
SOLANGE i <= 5 TUE
GIB i aus
i ← i + 1
ENDE SOLANGEFußgesteuerte Schleife (DO…WHILE)
Bedingung wird nach dem Durchlauf geprüft – mindestens 1 Durchlauf.
WIEDERHOLE
eingabe ← LIES_EINGABE()
BIS eingabe = "stop"Zählschleife (FOR)
FÜR i VON 1 BIS 10 TUE
GIB i * i aus
ENDE FÜR3. Unterprogramme / Funktionen
FUNKTION istGerade(zahl: GANZZAHL) → BOOLEAN
GIB (zahl MOD 2) = 0 zurück
ENDE FUNKTION
// Aufruf
WENN istGerade(42) DANN
GIB "ja" aus
ENDE WENN4. Der Schreibtischtest (Tracing)
Ein Klassiker der AP2: Gegeben ist Pseudocode – gesucht ist die Ausgabe. Technik:
- Wertetabelle mit je einer Spalte pro Variable + einer Spalte »Ausgabe«
- Zeile für Zeile durchgehen, Werte eintragen, Ausgabe protokollieren
- Bei Schleifen: pro Durchlauf eine neue Zeile
a ← 1
b ← 2
SOLANGE a < b TUE
a ← a + 1
GIB a aus
ENDE SOLANGETrace (Wertetabelle):
| Zeile | a | b | a < b? | Ausgabe |
|---|---|---|---|---|
| 1 | 1 | – | – | – |
| 2 | 1 | 2 | – | – |
| 3 (Check) | 1 | 2 | true | – |
| 4 | 2 | 2 | – | – |
| 5 | 2 | 2 | – | 2 |
| 3 (Check) | 2 | 2 | false | Schleife endet |
Ergebnis: Ausgabe ist 2.
5. Typische Stolperfallen
Übungen
SchreibtischtestWelche Ausgabe erzeugt dieser Pseudocode?
i ← 0
SOLANGE i < 4 TUE
WENN i MOD 2 = 0 DANN
GIB i aus
ENDE WENN
i ← i + 1
ENDE SOLANGESchreibtischtestTrace: Was kommt hier raus?
a ← 3
b ← 2
FÜR k VON 1 BIS 3 TUE
a ← a + b
GIB a aus
ENDE FÜREine AntwortWelche Aussage zur kopfgesteuerten Schleife (WHILE) trifft zu?
Eine AntwortWas ist Ziel eines Schreibtischtests?