Programmablaufplan (PAP)

Zur Visualisierung einer Programmstruktur erstellt man einen Programmablaufplan (PAP). Ein PAP ist ein gerichteter Graph, dessen Knoten Anweisungen und Verzweigungen repräsentieren, die gerichteten Kanten zeigen auf die im Ablauf folgenden Elemente.

PAP

Die graphischen Elemente entsprechen denen von Flussdiagrammen.

ElementSymbol
Startstart
AnweisungAnweisung
Verzweigung mit BedingungVerzweigung
Stopstop

Mithilfe dieser Elemente lässt sich jedes Python-Programm als PAP visualisieren. Umgekehrt lässt sich nicht jeder PAP in ein Python-Programm überführen, da imperative Programmiersprachen bestimmte Restriktionen hinsichtlich des Kontrollflusses haben.

Zur Überführung eines Python-Programms in einen PAP werden Anweisungen in Rechtecke geschrieben.

Bedingte Anweisungen / Alternativen und Schleifen werden mithilfe von Verzweigungen dargestellt, wobei die Bedingungen als boolscher Ausdruck in die Raute geschrieben werden. Der True-Fall sollte nach rechts, der False-Fall nach unten abgeleitet werden, um Überschneidungen von Kanten zu vermeiden.

ElementSymbol
Bedingte AnweisungBedingte Anweisung
Bedingte AlternativeBedingte Alternative
Bedingte SchleifeBedingte Schleife

Verzweigungen dürfen nicht irgendwo hinführen.

  1. Eine Bedingte Anweisung / Alternative mündet in einen gemeinsamen Ausgang.
  2. Schleifen haben eine Rückführung aus dem Schleifenrumpf zur Schleifenbedingung.
  3. Andere Rückbezüge sind nicht erlaubt.

Ältere imperative Programmiersprachen (z. B. Basic) konnten mithilfe einer goto-Anweisung an eine beliebige Stelle des Programms springen. Moderne Programmiersprachen verbieten solche Sprünge. Damit wird eine besser lesbare Struktur erzwungen ohne Einbußen in der Mächtigkeit der Sprache.