Lernfabrik

Einführung in Struktogramme und Programmablaufpläne

Struktogramme und Programmablaufpläne helfen dabei, Programme grafisch zu planen und zu verstehen. Besonders beim Einstieg in die Programmierung sind sie ein wichtiges Werkzeug, um logische Abläufe zu strukturieren.

Was ist ein Struktogramm?

Ein Struktogramm (auch Nassi-Shneiderman-Diagramm) stellt den Ablauf eines Programms schematisch dar. Es folgt dem Prinzip der strukturierten Programmierung und besteht aus drei Grundstrukturen: Sequenz, Auswahl (Verzweigung) und Wiederholung (Schleife).

1. Einfache Sequenz

Eine einfache Sequenz zeigt eine Abfolge von Anweisungen ohne Bedingungen oder Wiederholungen.

Struktogramm einfache Sequenz

2. Einfache Verzweigung (if-Anweisung)

Eine Bedingung entscheidet, ob ein bestimmter Anweisungsblock ausgeführt wird. Nur wenn die Bedingung erfüllt ist, wird der Code ausgeführt.

Struktogramm einfache Verzweigung

3. Zwei-Wege-Verzweigung (if-else)

Wird eine Bedingung geprüft, gibt es zwei mögliche Wege: „Ja“ oder „Nein“ – also zwei verschiedene Anweisungsblöcke.

Struktogramm if-else

4. Wiederholung (Schleife)

Struktogramme für Schleifen zeigen Wiederholungen von Anweisungen, solange eine bestimmte Bedingung erfüllt ist.

Struktogramm Schleife

Was ist ein Programmablaufplan (PAP)?

Ein Programmablaufplan stellt die logische Reihenfolge eines Algorithmus mithilfe von Symbolen dar. Die wichtigsten Symbole sind:

Beispiel: Zahlen vergleichen

Das folgende PAP zeigt, wie zwei Zahlen eingelesen werden.

PAP Vergleich zweier Zahlen

Die Kombination von PAP und Struktogramm ermöglicht eine strukturierte Herangehensweise an Programmieraufgaben. Je nach Zielgruppe und Komplexität ist die eine oder andere Methode besser geeignet.

Arbeitsauftrag

Was gibt der Algorithmus für die folgenden Eingaben aus? Schreibe einen ausführlichen Ablauf auf.
a) Eingabe: n = 5 (2) Eingabe: n = 6 (3) Eingabe: n = 11
b) Der Algorithmus antwortet in der Ausgabe mit „ja“ oder „nein“. Welche Frage beantwortet der Algorithmus? Erläutere kurz.
c) Schreibe den obigen Algorithmus in Form eines Struktogrammes auf.