Struktogramm
Ein Struktogramm (auch bekannt als Nassi-Shneiderman-Diagramm) ist ein Diagrammtyp zur Darstellung von Programmentwürfen und Algorithmen. Es wurde 1972/73 von Isaac Nassi und Ben Shneiderman entwickelt.
Einführung
Struktogramme zerlegen ein Gesamtproblem, das mit einem Algorithmus gelöst werden soll, in immer kleinere Teilprobleme, bis nur noch elementare Grundstrukturen wie Befehle und Kontrollstrukturen übrig bleiben. Diese werden dann durch das Struktogramm visualisiert.
In der Softwareentwicklung werden Struktogramme selten eingesetzt; hier werden vorrangig erweiterte Programmablaufpläne (Aktivitätsdiagramme der UML) verwendet. Im Informatik-Unterricht hingegen werden Struktogramme häufig verwendet, um den Aufbau von Algorithmen zu veranschaulichen. Die Erstellung von Struktogrammen ist Bestandteil vieler schulischer Abschlussprüfungen.
Syntax und Aufbau
Der Aufbau eines Struktograms wird in der DIN 66261 definiert.
Strukturblock
Verzweigungen
Schleifen
Aufruf
Symbol | Beschreibung |
---|---|
![]() |
Aufruf Symbol für den Aufruf eines Unterprogramms bzw. einer Methode. Nach deren Durchlauf wird zur aufrufenden Stelle zurückgesprungen. |
Konventionen
- Allgemeingültigkeit: Struktogramme sollten keine programmiersprachenspezifische Syntax enthalten
- Deklaration: Variablen und Konstanten sind im ersten Anweisungsblock zu deklarieren
- Exklusivität: Jeder Befehl erhält einen eigenen Strukturblock
- Zuweisungen: Werden mit einem nach links gerichteten Pfeil (←) oder mit := dargestellt
- Benennung: Jedes Struktogramm benötigt einen Titel zur Identifikation
Beispiel
Folgendes Struktogramm beschreibt einen Algorithmus, der eine Zahl in eine textbasierte Note umwandelt:

Der Algorithmus beginnt mit einem Titel, gefolgt von der Deklaration der benötigten Variablen. Es folgen Befehle zur Bildschirmausgabe und Eingabe, eine Mehrfachverzweigung je nach Wert der Variable, und abschließend die Ausgabe des Ergebnisses.