Zum Inhalt springen
Kostenloses Tool

Struktogramm online erstellen: Editor für Nassi-Shneiderman-Diagramme

Erstelle Struktogramme online als Nassi-Shneiderman-Diagramm nach DIN 66261: per Klick aus Bausteinen oder aus Pseudocode mit deutschen oder englischen Schlüsselwörtern. Mit einem Klick wird derselbe Ablauf zum Programmablaufplan, Export als PNG, SVG oder PDF. Kostenlos, ohne Anmeldung und komplett in deinem Browser.

Gebaut von Justin Schuessler

Ablauf fertig? Probier den Code dazu direkt auf einem eigenen vServer oder Webspace aus.

Baukasten

100 %
Struktogramm: FakultätFakultätEingabe: nergebnis := 1für i von 1 bis nergebnis := ergebnis * iAusgabe: ergebnis

Tastatur im Diagramm: ↑/↓ Block wählen, Enter Text bearbeiten, Alt+↑/↓ verschieben, Entf löschen, Einfg Baustein einfügen, Strg+Z/Strg+Y rückgängig/wiederholen, Strg+X/C/V ausschneiden/kopieren/einfügen.

Pseudocode-Syntax
PROGRAMM Name
EINGABE x / AUSGABE x
AUFRUF prozedur(x)
WENN bedingung DANN … SONST WENN … SONST … ENDE WENN
FALLS x  FALL 1: …  SONST: …  ENDE FALLS
SOLANGE bedingung … ENDE SOLANGE
WIEDERHOLE … BIS bedingung
FÜR i VON 1 BIS n SCHRITT 1 … ENDE FÜR
ENDLOSSCHLEIFE Name … ABBRUCH Name … ENDE ENDLOSSCHLEIFE

Jede andere Zeile ist eine Anweisung; mit \ am Zeilenanfang ist eine Zeile immer eine Anweisung, auch wenn sie mit einem Schlüsselwort beginnt.

Einrückung ist egal, Groß- und Kleinschreibung auch, und deutsche und englische Schlüsselwörter dürfen gemischt werden. Es wird kein echter Programmcode erzeugt oder ausgeführt.

Klicke im Diagramm auf einen Block, um ihn hier zu bearbeiten. Ein Doppelklick bearbeitet den Text direkt im Diagramm.

Speichern und exportieren

Alles läuft in deinem Browser: Der aktuelle Stand wird nur lokal gespeichert, der Teilen-Link enthält das Diagramm selbst. Es werden keine Daten an uns gesendet.

Funktionen

Struktogramme zeichnen, ohne Linien zu ziehen

Du beschreibst den Ablauf, der Editor setzt die Blöcke nach DIN 66261 und hält beide Ansichten aktuell.

Normgerechte Strukturblöcke

Anweisung, Verzweigung, Fallauswahl, kopf- und fußgesteuerte Schleife, Zählschleife, Endlosschleife, Aussprung und Unterprogrammaufruf nach DIN 66261.

Umschalten zum PAP

Derselbe Ablauf als Programmablaufplan nach DIN 66001, automatisch angeordnet und mit Rücksprüngen bei Schleifen.

Klick-Baukasten

Bausteine vor, nach oder in einen Block setzen, Texte direkt im Diagramm bearbeiten, verschieben, löschen, rückgängig machen.

Pseudocode in beide Richtungen

Text und Diagramm bleiben synchron. Tippfehler zeigt der Editor mit Zeile und Hinweis, das Diagramm bleibt stehen.

Export und Projektdatei

PNG und SVG für Dokumente, PDF auf A4 zum Drucken, Projektdatei (JSON) zum Speichern und wieder Öffnen.

Teilen ohne Konto

Der Teilen-Link trägt das Diagramm in der Adresse hinter dem #. Es wird nichts auf unseren Servern gespeichert.

So funktioniert's

So erstellst du ein Struktogramm online

Fünf Schritte von der Vorlage bis zum fertigen Export, ohne Konto und ohne Download.

Schritt 1

Vorlage laden oder neu beginnen

Wähle unter „Beispielvorlage laden“ eine der neun Übungsaufgaben, etwa Bubblesort oder Notenberechnung. Mit „Neu“ beginnst du mit einem leeren Ablauf.

Schritt 2

Bausteine einfügen

Wähle im Baukasten einen Baustein wie Verzweigung oder Zählschleife, markiere einen Block und setze den neuen Baustein davor, danach oder hinein. Per Doppelklick bearbeitest du den Text direkt im Diagramm.

Schritt 3

Oder Pseudocode schreiben

Im Feld „Pseudocode“ schreibst du eine Zeile pro Schritt, mit deutschen oder englischen Schlüsselwörtern. Diagramm und Text bleiben synchron; bei einem Tippfehler zeigt der Editor die Zeile mit einem Hinweis.

Schritt 4

Prüfen und umschalten

Verschiebe, kopiere oder lösche Blöcke und mache Schritte rückgängig. Bei Bedarf wechselst du in die Ansicht Programmablaufplan und siehst denselben Ablauf als Flussdiagramm.

Schritt 5

Exportieren oder teilen

Lade das Struktogramm als PNG, SVG oder PDF (A4) herunter, speichere die Projektdatei (JSON) oder erstelle einen Teilen-Link.

Grundlagen

Was ist ein Struktogramm?

Ein Struktogramm, auch Nassi-Shneiderman-Diagramm, N-S-Diagramm oder Chapin-Diagramm genannt, zeigt den Ablauf eines Algorithmus als ineinander geschachtelte Blöcke. Isaac Nassi und Ben Shneiderman haben die Darstellung 1973 veröffentlicht, in Deutschland sind die Sinnbilder in DIN 66261 genormt.

Weil es keine freien Sprünge gibt, zwingt ein Struktogramm zu strukturierter Programmierung: Folge, Verzweigung und Wiederholung stecken sichtbar ineinander. Deshalb planen Schüler, Auszubildende und Studierende damit Algorithmen, bevor sie eine Programmiersprache festlegen.

Mit diesem Editor erstellst du Struktogramme online, ohne Linien zu ziehen oder Kästchen auszumessen: Er berechnet die Blöcke aus deinem Ablauf und zeichnet denselben Ablauf auf Wunsch als Programmablaufplan.

Pseudocode

Vom Pseudocode zum Struktogramm

Schreibe eine Zeile pro Schritt, das Struktogramm folgt beim Tippen. Der Editor erkennt deutsche und englische Schlüsselwörter, Groß- und Kleinschreibung und Einrückung spielen keine Rolle. So sieht die Vorlage „Fakultät“ aus, die der Editor beim ersten Öffnen zeigt:

Mit deutschen Schlüsselwörtern

PROGRAMM Fakultät
EINGABE n
ergebnis := 1
FÜR i VON 1 BIS n
  ergebnis := ergebnis * i
ENDE FÜR
AUSGABE ergebnis

Mit englischen Schlüsselwörtern

PROGRAM Factorial
INPUT n
result := 1
FOR i FROM 1 TO n
  result := result * i
END FOR
OUTPUT result
Schlüsselwörter für die Strukturblöcke
BausteinDeutschEnglisch
EingabeEINGABE xINPUT x
AusgabeAUSGABE xOUTPUT x
UnterprogrammAUFRUF p(x)CALL p(x)
VerzweigungWENN … DANN … SONST … ENDE WENNIF … THEN … ELSE … END IF
FallauswahlFALLS x FALL 1: … SONST: … ENDE FALLSSWITCH x CASE 1: … DEFAULT: … END SWITCH
Kopfgesteuerte SchleifeSOLANGE … ENDE SOLANGEWHILE … END WHILE
Fußgesteuerte SchleifeWIEDERHOLE … BIS …REPEAT … UNTIL …
ZählschleifeFÜR i VON 1 BIS n … ENDE FÜRFOR i FROM 1 TO n … END FOR
EndlosschleifeENDLOSSCHLEIFE … ENDE ENDLOSSCHLEIFELOOP … END LOOP
Aussprung (Abbruch)ABBRUCHBREAK

Schlüsselwörter in anderen Sprachen erkennt der Editor nicht, solche Zeilen werden zu einfachen Anweisungen. Die Texte in den Blöcken, also Bedingungen, Anweisungen und Namen, schreibst du in jeder Sprache. Bei einem Tippfehler zeigt der Editor die Zeile mit einem Hinweis und behält das letzte gültige Diagramm.

Übungsvorlagen

Struktogramm-Beispiele zum Üben

Neun typische Übungsaufgaben aus Informatikunterricht, Ausbildung und Studium sind fertig hinterlegt. Du lädst sie über „Beispielvorlage laden“ und veränderst sie danach frei. Die Vorlagen kommen mit den Schlüsselwörtern, die am Pseudocode-Feld gerade gewählt sind, also Deutsch oder Englisch.

  • Fakultät
  • Notenberechnung
  • Login mit 3 Versuchen
  • Schaltjahr
  • Maximum einer Liste
  • Bubblesort
  • Getränkeautomat
  • Primzahltest
  • Zahlenraten

DIN 66261

Die wichtigsten Symbole im Struktogramm

Die Strukturblöcke nach Nassi-Shneiderman, die der Editor zeichnen kann. Jeder Block hat genau einen Eingang oben und einen Ausgang unten. Die Parallelverarbeitung aus DIN 66261 bietet der Editor nicht an.

Anweisung (Strukturblock)summe := summe + zahl

Anweisung (Strukturblock)

Ein Rechteck für einen einzelnen Verarbeitungsschritt, z. B. eine Zuweisung oder Berechnung.

Folge (Sequenz)Eingabe: zahlquadrat := zahl * zahlAusgabe: quadrat

Folge (Sequenz)

Blöcke untereinander werden von oben nach unten nacheinander ausgeführt. Ein- und Ausgaben sind normale Anweisungsblöcke.

Verzweigung (Auswahl)zahl > 0janeinAusgabe: „positiv“∅

Verzweigung (Auswahl)

Ein Dreieck mit der Bedingung teilt den Ablauf in einen Ja- und einen Nein-Zweig. Ein leerer Zweig wird mit ∅ markiert.

Fallauswahl (Mehrfachauswahl)x1a := 102a := 20sonsta := 0

Fallauswahl (Mehrfachauswahl)

Je nach Wert eines Ausdrucks läuft genau einer der Fälle. Die Fallwerte stehen direkt unter der Diagonale, der letzte Fall (oft „sonst“ für alle übrigen Werte) im rechten Dreieck.

Kopfgesteuerte Schleifesolange i <= 10i := i + 1

Kopfgesteuerte Schleife

Die Bedingung steht oben und wird vor jedem Durchlauf geprüft. Ist sie gleich zu Beginn falsch, läuft der Rumpf kein einziges Mal.

Fußgesteuerte SchleifeEingabe: zahlbis zahl > 0

Fußgesteuerte Schleife

Die Bedingung steht unten: Der Rumpf läuft mindestens einmal und wird wiederholt, bis die Bedingung erfüllt ist.

Zählschleifefür i von 1 bis 10Ausgabe: i

Zählschleife

Eine kopfgesteuerte Schleife mit Zählvariable, Start- und Endwert und optionaler Schrittweite.

Unterprogrammaufrufsortiere(liste)

Unterprogrammaufruf

Ein Block mit doppelten Seitenlinien ruft ein eigenes Unterprogramm auf, das an anderer Stelle beschrieben ist.

EndlosschleifeMenüEingabe: wahlausführen(wahl)

Endlosschleife

Eine Wiederholung ohne Bedingung: Kopfband (optional mit Bezeichner), Balken links und Fußband. Sie wird nur durch einen Aussprung verlassen.

Aussprung (Abbruch)Menü

Aussprung (Abbruch)

Der Keil links verlässt die innerste umgebende Schleife; der Bezeichner nennt den verlassenen Block. Danach geht es mit dem Block nach dieser Schleife weiter.

DIN 66001

Die wichtigsten Symbole im Programmablaufplan

Die Sinnbilder aus DIN 66001, die der Editor für Programmablaufpläne verwendet. Der Ablauf wird automatisch angeordnet, du musst nichts verschieben.

Grenzstelle (Start/Ende)Start

Grenzstelle (Start/Ende)

Das Oval markiert Anfang und Ende des Programmablaufplans.

Operationsumme := summe + zahl

Operation

Ein Rechteck steht für einen Verarbeitungsschritt, z. B. eine Zuweisung oder Berechnung.

Ein-/AusgabeEingabe: zahl

Ein-/Ausgabe

Das Parallelogramm zeigt, wo Daten eingelesen oder ausgegeben werden.

Verzweigungzahl > 0

Verzweigung

Die Raute enthält eine Bedingung. Je nach Ergebnis geht es über den Ja- oder den Nein-Ausgang weiter.

Unterprogrammsortiere(liste)

Unterprogramm

Ein Rechteck mit doppelten Seitenlinien ruft ein Unterprogramm auf, das einen eigenen Ablaufplan hat.

AblauflinieEingabe: zahlAusgabe: zahl

Ablauflinie

Linien mit Pfeilspitze verbinden die Symbole und zeigen die Reihenfolge. Der Normalfall läuft von oben nach unten.

Verzweigung mit Zusammenführungzahl > 0janeins := 1s := -1

Verzweigung mit Zusammenführung

Nach einer Verzweigung laufen beide Wege an einem Punkt wieder zusammen, bevor der Ablauf weitergeht.

Schleifenbegrenzung (Endlosschleife)MenüEingabe: wahlMenü

Schleifenbegrenzung (Endlosschleife)

Ein Sechseck mit abgeschrägten oberen Ecken markiert den Schleifenanfang, eines mit abgeschrägten unteren Ecken das Ende. Der Editor nutzt das Paar für die Endlosschleife.

Übergangsstelle (Aussprung)EndlosschleifefertigjaneinAweiter()EndlosschleifeA

Übergangsstelle (Aussprung)

Ein Kreis mit Buchstabe verbindet zwei Stellen ohne lange Linie. Ein Aussprung endet im Kreis A, der Ablauf geht beim Kreis A nach der Schleife weiter.

Schleife mit Rücksprungi <= 10jai := i + 1nein

Schleife mit Rücksprung

Eine Schleife entsteht durch eine Verzweigung und eine Rücksprunglinie zurück vor die Bedingung.

Mehr entdecken

Weitere Tools

FAQ

Häufig gestellte Fragen

Kurze Antworten rund um Struktogramme, Nassi-Shneiderman-Diagramme, DIN 66261 und diesen Editor.

Ein Struktogramm stellt den Ablauf eines Programms oder Algorithmus grafisch dar, ohne sich auf eine Programmiersprache festzulegen. Jeder Verarbeitungsschritt ist ein Rechteck, Verzweigungen und Schleifen sind ineinander geschachtelte Blöcke. Weil es keine Sprünge gibt, zwingt es zu einem sauber strukturierten Ablauf. Isaac Nassi und Ben Shneiderman haben die Darstellung 1973 veröffentlicht, deshalb heißt sie auch Nassi-Shneiderman-Diagramm, N-S-Diagramm oder Chapin-Diagramm.

Direkt hier im Editor: Er ist kostenlos, braucht kein Konto und läuft komplett in deinem Browser. Der aktuelle Stand liegt nur im lokalen Speicher deines Browsers, Exporte entstehen direkt auf deinem Gerät. Beim Teilen-Link steckt das Diagramm im Teil der Adresse hinter dem #, der nicht an den Server übertragen wird.

Anweisung, Folge, Eingabe, Ausgabe, Verzweigung, Fallauswahl, kopf- und fußgesteuerte Schleife, Zählschleife, Endlosschleife, Aussprung (Abbruch) und Unterprogrammaufruf. Die Sinnbilder folgen DIN 66261 (Sinnbilder für Struktogramme nach Nassi-Shneiderman, 1985). Nur die Parallelverarbeitung aus der Norm bietet der Editor nicht an.

Beide beschreiben denselben Ablauf. Das Struktogramm schachtelt Blöcke ineinander und kennt keine freien Sprünge. Der Programmablaufplan (PAP, DIN 66001), oft auch Flussdiagramm genannt, verbindet Symbole mit Pfeilen; Schleifen entstehen über Rücksprunglinien. In diesem Editor schaltest du mit einem Klick zwischen beiden Ansichten um, weil beide aus demselben Ablauf gezeichnet werden. Zum Programmablaufplan-Editor

Die kopfgesteuerte Schleife (while, „solange …“) hat die Bedingung oben und prüft sie vor jedem Durchlauf, der Rumpf läuft also eventuell gar nicht. Die fußgesteuerte Schleife („wiederhole … bis …“) prüft unten, der Rumpf läuft mindestens einmal. Die Zählschleife (for) ist eine kopfgesteuerte Schleife mit Zählvariable, Start- und Endwert und optionaler Schrittweite. Eine Endlosschleife hat keine Bedingung und wird nur durch einen Aussprung (Abbruch) verlassen.

Eine Zeile pro Schritt. Blöcke öffnest und schließt du mit festen Schlüsselwörtern, auf Deutsch (WENN, FALLS, SOLANGE, WIEDERHOLE … BIS, FÜR … VON … BIS) oder auf Englisch (IF, SWITCH, WHILE, REPEAT … UNTIL, FOR … FROM … TO); die Sprache wählst du am Pseudocode-Feld. Schlüsselwörter in anderen Sprachen erkennt der Editor nicht, die Texte in den Blöcken schreibst du aber in jeder Sprache. Programmcode in Java oder Python wandelt der Editor nicht um, und er erzeugt auch keinen Programmcode. Bei einem Tippfehler zeigt er die Zeile mit einem Hinweis und behält das letzte gültige Diagramm.

Als PNG in hoher Auflösung, als SVG für die Weiterbearbeitung und als PDF auf einer A4-Seite für den Druck. Die PNG-Datei fügst du in Word oder LibreOffice Writer als Bild ein. Mit der Projektdatei (JSON) speicherst du den Ablauf und öffnest ihn später wieder; sie enthält eine Versionsnummer, damit ältere Dateien auch in neueren Versionen des Editors funktionieren.

Ja, neun Vorlagen mit typischen Übungsaufgaben: Fakultät, Notenberechnung, Login mit 3 Versuchen, Schaltjahr, Maximum einer Liste, Bubblesort, Getränkeautomat, Primzahltest und Zahlenraten. Du lädst sie über „Beispielvorlage laden“ und veränderst sie frei. Zeichnest du in der Prüfung von Hand, hilft dir der Editor beim Üben und Kontrollieren.

Noch weitere Fragen?

Support kontaktieren
Vom Ablauf zum Programm

Probier den Code zu deinem Struktogramm auf einem eigenen Server aus

Auf einem ZAP-Hosting vServer hast du vollen Root-Zugriff für jede Sprache, auf einem Webspace laufen PHP und MySQL sofort.

4,4/5 Trustpilot32.000+ Aktive ServerSeit 2010

Kein Setup. Kein Risiko. In Sekunden online.

Flexible LaufzeitJederzeit kündbarIn 60 Sekunden online

Auf der Suche nach weiteren Tools? Alle Entwickler-Tools ansehen