Nassi-Shneiderman-Diagramm

Bei Struktogrammen (Nassi-Shneiderman-Diagramm) werden die Symbole durch die Programmkonstrukte "Sequenz", "Auswahl" und "Wiederholung" dargestellt. Diese können vielfältig modifiziert und damit auf die Problematik des Anwenders angepasst werden. Ein Struktogramm wird immer von oben nach unten durchlaufen. Die Blöcke können beliebig oft geschachtelt werden, sowie aufeinander folgen. Dabei wird ein Block immer von oben betreten und unten verlassen.

 
 
 
 
 
 
 
    1. Sequenz
      VorschauEine Sequenz (Abbildung "Sequenz") kann eine beliebige Anzahl von Programmanweisungen beinhalten, die nacheinander schrittweise abgearbeitet werden.

    2. Auswahl
      VorschauEine Auswahl (Abbildung "Auswahl") beschreibt eine Verzweigung aufgrund einer eindeutigen Bedingung. Dabei gibt es mehrere Möglichkeiten den Auswahl-Typ zu erweitern:
    3. Wiederholung
      VorschauDieser Block führt aufgrund einer Bedingung eine bestimmte Anzahl von Durchläufen aus. In Abbildung "Wiederholung" wird die Bedingung am Anfang des Blocks überprüft. Man nennt die Bedingung in diesem Fall Ausführungsbedingung. Ist die Bedingung erfüllt, wird der Anweisungsblock durchlaufen. Andernfalls wird der nachfolgende Programmabschnitt abgearbeitet.

      Abwandlungen des Wiederholungsblocks:
      • Vorschau Wiederholung mit Abbruchbedingung (Abbildung "Abbruchbedingung")
        Die Bedingung wird am Ende der Schleife überprüft. Ist sie erfüllt, wird die folgende Sequenz bearbeitet.

      • VorschauWiederholung mit unendlicher Schleife (loop) (Abbildung "Endlosschleife")
        Eingangs- und Abbruchbedingung werden nicht explizit abgefragt. Dieser Block ist nur dann funktionsfähig, wenn innerhalb des zu wiederholenden Blockes mindestens eine Abbruchbedingung vorgesehen ist, die das Verlassen des Blockes ermöglicht.


Analogismus in MATLAB

Sequenz:
jede Zuweisung wie v = [1 3 4]
Auswahl:
if-else-Block
Mehrfachverzweigung: if-ifelse-Block
switch-Block
Mehrfachverzweigung mit alternativer Verarbeitung:
if-ifelse-else-Block
switch-Block mit otherwise
Wiederholung:
for-Block
while-Block
Wiederholung mit Abbruchbedingung:
nicht vorhanden
Wiederholung mit unendlicher Schleife:
while(true)-Block mit Abbruchbedingung

Beispiel:

Voraussetzung zum Bestehen der IKT-Prüfung ist die Anmeldung zur IKT-Klausur (Abbildung "Struktogramm"). Dies wird in einer Sequenz eingetragen. Nach Eingang der PST-Note sowie der Abgabe der IKT-Klausur, wird in einer Schleife mit Abbruchbedingung abgefragt, ob die IKT-Note besser als 5,0 ist. Wenn nein, dann muss der Kurs bzw. die Prüfung so lange wiederholt werden, bis die Prüfung bestanden wurde.

Ist die Note besser als 5,0, also die Prüfung bestanden, gibt es die Möglichkeit der Notenverbesserung. In einer Auswahl wird abgefragt, ob die PST-Note besser als die IKT-Note ist. Ist dies der Fall (Ja), tritt das Notenverbesserungsprozedere ein. Es wird von der IKT 0,3 abgezogen und auf Notenstufe gerundet. Ist dies nicht der Fall (Nein), bleibt die Note bestehen. In jedem Fall ist die Prüfung bestanden.