Lektion 1 von 8

Struktogramm und Pseudocode in der Prüfung

Was ein Struktogramm ist, warum es in IHK-Aufgaben so oft vorkommt, welche Schreibweise in vielen Lösungshinweisen steht, und wie du dein erstes Struktogramm Zeile für Zeile mit dem Schreibtischtest liest.

  • Etwa 15 Minuten
  • 1 Leseaufgabe, 4 Quizfragen
  • Papier und Stift genügen

Warum es Struktogramme gibt

Bevor jemand ein Programm schreibt, muss klar sein, was es in welcher Reihenfolge tun soll. Ein Struktogramm hält genau das fest: den Ablauf, ohne Programmiersprache, ohne Semikolons, ohne Klammern. Erfunden haben es Isaac Nassi und Ben Shneiderman Anfang der 1970er Jahre, deshalb heißt es auch Nassi-Shneiderman-Diagramm; in Deutschland ist es in der DIN 66261 festgelegt.

Die Idee ist einfach: Jeder Schritt ist ein Rechteck. Die Rechtecke stapeln sich von oben nach unten. Eine Entscheidung bekommt ein Dreieck im Kopf und teilt den Kasten in zwei Spalten. Eine Wiederholung bekommt einen Balken, der den Rumpf umklammert. Das sind die Grundformen: Sequenz, Verzweigung und Schleife in drei Varianten. Dazu kommen später die Mehrfachauswahl (Lektion 4) und der Aufruf eines Unterprogramms (Lektion 6). Genau deshalb eignet sich das Struktogramm für Prüfungsaufgaben: Man sieht auf einen Blick, ob jemand Sequenz, Auswahl und Wiederholung verstanden hat.

Bewertung
Eingabe punkte
punkte >= 50janein
Ausgabe "bestanden"
Ausgabe "nicht bestanden"
Ein Struktogramm mit einer Eingabe und einer Verzweigung. Lies es von oben nach unten: Erst die Eingabe, dann die Frage, dann je nach Antwort die linke oder die rechte Spalte.

Das Beispiel liest sich fast wie ein Satz: „Lies die Punkte ein. Wenn sie mindestens 50 sind, gib ‚bestanden‘ aus, sonst ‚nicht bestanden‘.“ Diese Lesbarkeit ist der Sinn der Sache, und sie ist auch das, was die Prüfer sehen wollen.

Was die IHK-Prüfung erwartet

Struktogramme und Pseudocode gehören zur Abschlussprüfung Teil 1, die alle IT-Berufe gemeinsam schreiben. Häufig kommt dort eine Aufgabe vor, in der du einen Ablauf entweder lesen oder selbst entwerfen musst. Typische Formulierungen:

So steht es in der AufgabeWas verlangt ist
„Ermitteln Sie die Ausgabe des Struktogramms für die Eingabe …“Lesen und nachvollziehen, meist mit einer Tabelle der Variablenwerte (Schreibtischtest, Lektion 4).
„Führen Sie einen Schreibtischtest durch …“Die Werte der Variablen Schritt für Schritt notieren, meist für eine vorgegebene Eingabe.
„Ergänzen Sie das Struktogramm um …“Ein vorgegebenes Struktogramm um einen Zweig oder eine Schleife erweitern.
„Finden und korrigieren Sie den Fehler im Pseudocode“Fehlersuche: Stimmt die Bedingung, der Startwert, die Zahl der Durchläufe (Off-by-one)?
„Entwerfen Sie den Algorithmus als Struktogramm oder in Pseudocode“Selbst entwerfen. Du darfst wählen; das Struktogramm macht Strukturfehler sichtbar, Pseudocode ist auf Papier schneller zu korrigieren.
„… in einer Programmiersprache Ihrer Wahl oder in Pseudocode“Auch hier zählt nur die Logik. Pseudocode reicht, solange die Struktur eindeutig ist.

Bewertet wird typischerweise in kleinen Portionen: ein Punkt für die richtige Schleifenart, einer für die Bedingung, einer für die Initialisierung der Variablen, einer für die Ausgabe an der richtigen Stelle. Wer die Form beherrscht, sammelt diese Punkte auch dann, wenn der Algorithmus nicht perfekt ist. Andere richtige Lösungen werden in den Lösungshinweisen in der Regel anerkannt. Anwendungsentwickler treffen Struktogramme in der AP2 erneut, dann oft in Kombination mit einem Klassendiagramm.

Die Grundbausteine auf einen Blick

Jedes Struktogramm besteht aus diesen Formen. Du lernst sie in den nächsten Lektionen einzeln; hier siehst du sie einmal nebeneinander, damit du sie wiedererkennst.

FormBedeutungPseudocode
x = 5
Ausgabe x
Sequenz. Anweisungen der Reihe nach, jede in einem eigenen Rechteck.x = 5
AUSGABE x
x > 0janein
Ausgabe "positiv"
Ausgabe "nicht positiv"
Verzweigung. Bedingung im Dreieck, links der Ja-Zweig, rechts der Nein-Zweig.WENN x > 0 DANN … SONST … ENDE WENN
solange x < 10
x = x + 1
Kopfgesteuerte Schleife. Bedingung oben, Rumpf eingerückt. Wird geprüft, bevor der Rumpf läuft.SOLANGE x < 10 … ENDE SOLANGE
x = x + 1
bis x >= 10
Fußgesteuerte Schleife. Rumpf zuerst, Bedingung unten. Läuft mindestens einmal.WIEDERHOLE … BIS x >= 10
für i = 1 bis 5
Ausgabe i
Zählschleife. Eine kopfgesteuerte Schleife mit eingebautem Zähler.FÜR i = 1 BIS 5 … ENDE FÜR

Zwei Formen kommen später dazu: die Mehrfachauswahl (FALLS) in Lektion 4 und der Aufruf eines Unterprogramms in Lektion 6.

Die Pseudocode-Schreibweise dieses Kurses

Für Pseudocode gibt es keine Norm. Du darfst in der Prüfung eigene Wörter wählen, musst sie aber durchgehend gleich benutzen. Dieser Kurs nutzt eine deutsche Schreibweise, wie sie in Lehrbüchern und vielen Lösungshinweisen vorkommt. Schlüsselwörter in Großbuchstaben, Blöcke eingerückt, jeder Block mit einem eigenen Ende:

Struktogramm

Eingabe punkte
punkte >= 50janein
Ausgabe "bestanden"
Ausgabe "nicht bestanden"

Pseudocode

EINGABE punkte
WENN punkte >= 50 DANN
    AUSGABE "bestanden"
SONST
    AUSGABE "nicht bestanden"
ENDE WENN

Die wichtigsten Regeln, die in beiden Schreibweisen gelten:

  • Zuweisung mit = (manche schreiben := oder ←, alle drei sind üblich). Links steht die Variable, rechts der Wert: summe = summe + i.
  • Vergleich mit == für „ist gleich“, damit er sich von der Zuweisung unterscheidet, sowie <, >, <=, >=, !=. In vielen Struktogrammen und Lösungshinweisen steht = für den Vergleich und := oder ← für die Zuweisung. Der Kurs nutzt == für den Vergleich; beides ist verständlich, solange du es durchgehend gleich machst.
  • Ein- und Ausgabe als EINGABE x und AUSGABE "Text". Im Struktogramm reicht „Eingabe x“ im Rechteck. Zeichenketten bekommen in Code und im Struktogramm gerade Anführungszeichen: "Text".
  • Bedingungen verknüpfst du mit UND, ODER, NICHT.
  • Variablen bekommen sprechende Namen ohne Leerzeichen: anzahl, maxWert, istGueltig.

Ein Struktogramm lesen

Lesen heißt: mit dem Finger von oben nach unten gehen und bei jeder Zeile aufschreiben, was sich ändert. Das üben wir gleich am ersten kompletten Beispiel. Es berechnet die Summe der Zahlen von 1 bis n.

Summe von 1 bis n
Eingabe n
summe = 0
für i = 1 bis n
summe = summe + i
Ausgabe summe
Die Zählschleife läuft für i = 1, 2, 3, … bis n. Bei jedem Durchlauf kommt das aktuelle i zur Summe dazu.

So gehst du vor, wenn du herausfinden willst, was für n = 3 ausgegeben wird:

  1. Eingabe n: n ist 3.
  2. summe = 0: summe ist 0. Diese Zeile heißt Initialisierung, sie legt den Startwert fest. Ohne sie wüsste niemand, womit die Addition beginnt.
  3. Die Schleife: i startet bei 1. 1 ist nicht größer als 3, also Rumpf ausführen: summe = 0 + 1 = 1. Dann i = 2: summe = 1 + 2 = 3. Dann i = 3: summe = 3 + 3 = 6. Dann i = 4, das ist größer als n, die Schleife endet.
  4. Ausgabe summe: 6.

Genau diese Schritte schreibt man in der Prüfung in eine Tabelle, den Schreibtischtest (Wertetabelle, englisch Trace), damit nichts verloren geht:

SchrittisummeAusgabe
Start·0·
Durchlauf 111·
Durchlauf 223·
Durchlauf 336·
Ende466
Schreibtischtest für n = 3. Jede Zeile ist ein Zustand, jede Spalte eine Variable. Am Ende steht i auf 4: Die Prüfung 4 > 3 beendet die Schleife. In Lektion 4 lernst du, den Schreibtischtest auch für verschachtelte Abläufe zu führen.
Leseaufgabe 1.1

Führen Sie einen Schreibtischtest durch: Was gibt das Struktogramm „Summe von 1 bis n“ für n = 5 aus? Führe den Schreibtischtest auf Papier weiter, bevor du die Lösung aufklappst.

Musterlösung anzeigen

Ausgabe: 15. Die Summe wächst 1, 3, 6, 10, 15. Fünf Durchläufe, weil i die Werte 1 bis 5 annimmt; beim sechsten Prüfen ist i = 6 größer als n und die Schleife endet.

Jetzt selbst testen

Vier Fragen zum Einstieg. Du hast so viele Versuche, wie du willst.

1 / 4

Welche Form hat im Struktogramm eine Verzweigung?

2 / 4

Woran erkennst du im Struktogramm eine fußgesteuerte Schleife?

3 / 4

Was gibt „Summe von 1 bis n“ für n = 0 aus?

4 / 4

Eine Aufgabe sagt: „Entwerfen Sie den Algorithmus in Pseudocode oder als Struktogramm.“ Was gilt?