Pseudocode: Unterschied zwischen den Versionen
Sn (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
Sn (Diskussion | Beiträge) |
||
Zeile 45: | Zeile 45: | ||
X = input | X = input | ||
</pre> | </pre> | ||
|<syntaxhighlight> | |<syntaxhighlight lang="python"> | ||
X = input() | X = input() | ||
</syntaxhighlight> | </syntaxhighlight> |
Version vom 12. März 2024, 13:22 Uhr
Als Pseudocode bezeichnet man eine textuelle Darstellung eines Algorithmus, die nicht in einer konkreten Programmiersprache formuliert ist, aber doch gewisse Schlüsselwörter enthält, sodass sie mit wenig Aufwand in einer Programmiersprache implementiert werden kann.
Die Idee ist, den Prozess der Programmierung in zwei Teile zu teilen:
- Der Entwurf von Algorithmen, der ein tiefes Verständnis von theoretischer Informatik erfordert.
- Die Umsetzung von Algorithmen in einer Programmiersprache, der weniger Denk- als Fleißarbeit erfordert.
Als Produkt des ersten Schrittes entsteht ein Pseudocode, der mit wenig Denkarbeit von einem fähigen Programmiery in einer Programmiersprache umgesetzt werden kann.
"Syntax"
Meistens werden im Pseudocode mathematische Algorithmen beschrieben. Deswegen sind auch die meisten Anweisungen eher mathematischer Natur und dürfen auch Formeln enthalten – die konkrete Umsetzung bleibt, wie gesagt, dem Programmiery überlassen. Andere Anweisungen können sich auf verwendete Variablen oder Datenstrukturen beziehen. Entscheidend ist, dass die Pseudocode-Anweisungen unkompliziert in eine reale Sprache übersetzt werden können.
Typischerweise werden für die Darstellung von Algorithmen in Pseudocode wenige Schlüsselwörter verwendet, die in den meisten Programmiersprachen verwendet werden:
algorithmischer Bausteil | Schlüsselwort | Beispiel: Umsetzung in Python |
---|---|---|
Sequenz | X Y Z |
X
Y
Z
|
Eingabe | X = input |
X = input()
|
Ausgabe | print(X) |
print(X)
|
Rückgabe eines Ergebnisses | return X |
return X
|
Bedingte Verzweigung | if x then Y else Z endif |
if X:
Y
else:
Z
|
Bedingte Wiederholung | while X do Y endwhile |
while X:
Y
|
Wiederholung mit Laufvariable | for T from U to V step W do X endfor |
for T in range(U, V+1, W):
X
|
Wiederholung über einer Datenstruktur | for X in Y do Z endfor |
for X in Y:
Z
|
Beispiel
Der folgende Pseudocode beschreibt den Euklidischen Algorithmus zur Bestimmung des größten gemeinsamen Teilers zweier Zahlen:
input A input B if A = 0 then return B endif while B > 0 do if A > B then A = A - B else B = B - A endif endwhile return A
Alternativen
Statt textuell können Algorithmen auch grafisch dargestellt werden, etwa mit Programmablaufplänen.