Pseudocode Struktogramm Generator

Nassi-Shneiderman-Diagramme mit Euro-850 Braille-Font

Eingabe (Pseudocode)

Im Eingabefeld Strg+Eingabe löst direkt das Rendern aus.
Schlüsselwörter: SEQUENZ, WENN, SONST, FALL, IST, SOLANGE, WIEDERHOLE, ENDLOSSCHLEIFE, FUER, ABBRUCH, EINGABE, AUSGABE, PARALLEL, PROZESS, AUFRUF, RUECKGABE, ENDE.
Einrückung (mit Leertaste) bestimmt Verschachtelung.

Vorschau (Braille)

Kontrollansicht

Pseudocode Struktogramm Generator

MIT License © 2026 Barbara Henn

Datenschutz: Diese Seite erhebt, speichert und überträgt keine personenbezogenen Daten. Es werden keine Cookies oder Tracking-Tools verwendet. Der Pseudocode wird ausschließlich lokal im Browser verarbeitet.

Pseudocode-Anleitung für Braille-Struktogramme

Diese Anleitung beschreibt die Eingabesyntax, mit der du Nassi-Shneiderman-Diagramme (Struktogramme) für taktilen Braille-Output erzeugst.

Ausführliche Anleitung mit Abbildungen: ANLEITUNG.html öffnen (HTML-Version mit detaillierten Erklärungen, ASCII-Abbildungen und Beispielen für jeden Baustein)


Grundprinzip

  • Einrückung bestimmt Verschachtelung (wie Python).
  • Großbuchstaben für Schlüsselwörter.
  • Jeder Block beginnt mit einem Schlüsselwort und endet mit ENDE.

Schlüsselwörter

SchlüsselwortBedeutung
SEQUENZStartet einen neuen Anweisungsblock
WENNBedingte Verzweigung (if)
SONSTAlternative eines WENN-Blocks
FALLFallunterscheidung (switch/case)
ISTEinzelner Fall innerhalb von FALL
SOLANGEKopfgesteuerte Schleife (while)
WIEDERHOLEFußgesteuerte Schleife (do-while)
ENDLOSSCHLEIFEEndlosschleife
FUERZählschleife (for)
ABBRUCHAbbruchbedingung einer Endlosschleife
AUFRUFUnterprogrammaufruf
EINGABEDateneingabe (I/O)
AUSGABEDatenausgabe (I/O)
PARALLELParallele Verarbeitung
PROZESSZweig innerhalb von PARALLEL
RUECKGABERückgabewert
ENDEBeendet einen Block

Blöcke und Einrückung

1. SEQUENZ

SEQUENZ
  a = 1
  b = 2
  summe = a + b
ENDE
  • Jede Anweisung steht in einer eigenen Zeile.
  • Die Zeilen innerhalb von SEQUENZ sind eingerückt.

2. WENN / SONST

WENN a > b
  Ausgabe: a ist größer
SONST
  Ausgabe: b ist größer oder gleich
ENDE
  • Die Bedingung steht in der WENN-Zeile.
  • SONST ist optional.
  • WENN und SONST müssen gleich weit eingerückt sein.
  • Der Inhalt von WENN und SONST wird weiter eingerückt.

3. FALL / IST / SONST

FALL monat
  IST 1
    Ausgabe: Januar
  IST 2
    Ausgabe: Februar
  IST 3
    Ausgabe: März
  SONST
    Ausgabe: anderer Monat
ENDE
  • FALL gefolgt vom Prüfausdruck.
  • IST für jeden möglichen Wert.
  • SONST als letzter Fall für alle übrigen Werte.
  • Die IST-Werte (0, 1, 2…) werden in der Kopfzeile angezeigt.

4. SOLANGE

SOLANGE i < 10
  summe = summe + i
  i = i + 1
ENDE
  • Kopfgesteuerte Schleife: Bedingung oben, Body eingerückt darunter.

5. WIEDERHOLE

WIEDERHOLE
  summe = summe + i
  i = i + 1
SOLANGE i < 10
ENDE
  • Fußgesteuerte Schleife: Body oben, Bedingung unten.
  • SOLANGE steht am Ende und prüft die Wiederholung.

6. ENDLOSSCHLEIFE / ABBRUCH

ENDLOSSCHLEIFE
  Daten einlesen
  ABBRUCH daten == null
  Daten verarbeiten
ENDE
  • ENDLOSSCHLEIFE hat keinen eigenen Abbruch im Kopf.
  • ABBRUCH <Bedingung> innerhalb der Schleife beendet sie.
  • ABBRUCH muss direkt in der Schleife stehen, nicht verschachtelt in einem WENN.

6b. FUER (Zählschleife)

FUER i = 1 BIS 10 SCHRITT 2
  summe = summe + i
ENDE
  • Zählschleife: Zählvariable, Start- und Endwert, optional Schrittweite.
  • Syntax: FUER <var> = <start> BIS <ende> [SCHRITT <schritt>].
  • SCHRITT ist optional (Vorgabe 1).

7. EINGABE / AUSGABE

EINGABE x
AUSGABE "Hallo Welt"
  • Dateneingabe bzw. -ausgabe als Parallelogramm-Block.
  • Freier Text nach dem Schlüsselwort (z.B. Variablenname oder Ausgabetext).

8. AUFRUF

AUFRUF berechneSumme(a, b)
  • Zeigt einen Unterprogrammaufruf als Block mit Begrenzungsstrichen an.

9. RUECKGABE

RUECKGABE summe
  • Beendet die Funktion und gibt einen Wert zurück.
  • Dargestellt als Block mit symmetrischen Pfeilspitzen.

10. PARALLEL / PROZESS

PARALLEL
  PROZESS
    anweisung a
  PROZESS
    anweisung b
ENDE
  • Parallele Verarbeitung: Zweige laufen nebeneinander im abgerundeten Gesamtblock.
  • Oben verläuft eine durchgehende Gabel-Linie (mit Ansätzen an den Ecken), unten ein Zusammenlauf – das kennzeichnet die Nebenläufigkeit.
  • Jeder Zweig wird durch PROZESS eingeleitet; der Text danach ist der Zweig-Name (optional).
  • Die Inhalte der Zweige werden weiter eingerückt.

Einrückung

  • Verwende 2 oder 4 Leerzeichen pro Ebene.
  • Die Einrückung des Inhalts muss immer größer sein als die des umgebenden Schlüsselworts.

Beispiel (korrekt):

SEQUENZ
  WENN x > 0
    Ausgabe: positiv
  SONST
    Ausgabe: nicht positiv
  ENDE
ENDE

Beispiel (falsch):

SEQUENZ
WENN x > 0       ← fehlt Einrückung!
Ausgabe: positiv ← fehlt Einrückung!
ENDE

Vollständiges Beispiel

SEQUENZ
  EINGABE alter
  a = 1
  summe = 0
  FALL wochentag
    IST 1
      Ausgabe: Montag
    IST 2
      Ausgabe: Dienstag
    IST 3
      Ausgabe: Mittwoch
    SONST
      Ausgabe: anderer Tag
  ENDE
  FUER i = 1 BIS alter
    AUSGABE "Hallo"
  ENDE
  ENDLOSSCHLEIFE
    Schleifeninhalt
    ABBRUCH a > 10
  ENDE
  RUECKGABE summe
ENDE

Tipps

  • Text innerhalb der Blöcke ist frei wählbar (z.B. Ausgabe:, berechne, x = x + 1).
  • Die FALL-Kopfzeile passt sich automatisch der Anzahl der Fälle an.
  • Braille-Zeichen (Euro-850) werden als Punktraster gerendert.
  • Rahmenstärke und Schriftgröße können in CONFIG im index.html angepasst werden.
  • Tastatur-Shortcut: Im Eingabefeld kannst du Strg+Eingabe drücken, um direkt zu rendern.

Export

  • SVG: Direkt als Vektorgrafik herunterladen.
  • PDF (A4/A3): Über „PDF (A4/A3) exportieren" wird eine PDF-Datei direkt erzeugt und zum Speichern angeboten (kein Druckdialog). Es wird automatisch A4 gewählt, sofern das Diagramm 1:1 darauf passt, sonst A3. Das Bild wird zentriert mit einem Mindestrand von 1,5 cm platziert; nichts wird abgeschnitten.