Datum UhrzeitGedenktageNamenstage

Malte - Software - MNSD

MNSDMNSD ist ist Maltes Tool zum Erstellen von Nassi-Sneiderman-Diagrammen, auch Struktogramme genannt. Die Struktogramme werden aus einem Text erstellt, der bestimmte Schlüsselwörter enthält. Dieser Text kann sowohl Klartext, als auch bash (UNIX Shell Script) sein. Der Text kann live editiert werden und durch Drücken von F9 passt sich das Struktogramm sofort an. So können Änderungen leicht ausprobiert werden. Dank SynEdit unterstützt MNSD auch einige nützliche Funktionen eines Quelltexteditors wie Suchen (Strg+F) und Ersetzen (Strg+R) und wahlweise Syntaxhighlighting für bash. Das Archiv mnsd.zip enthält nur das Programm MNSD.exe. Da MNSD mit Turbo Delphi 2006 (BDS 4.0) entwickelt wird, sind keine weiteren Dateien zum Auführen nötig. Alle Einstellungen werden in der Datei MNSD.ini gespeichert. Diese wird im selben Verzeichnis, in dem sich auch MNSD.exe befindet, angelegt nach dem ersten Start.

Download

MNSD Version 0.2.0 zip mnsd.zip

Versionsgeschichte

Version 0.2.0

Version 0.1.2

Version 0.1.1

Bedienung

Der Quelltexteditor kann wie jeder andere auch benutzt werden. Über das Dateinmenü können Dateien geöffnet und gespeichert werden und über das Bearbeiten-Menü stehen einige weitere klassische Funktionen zur Verfügung. Im Menü MNSD kann man sich nun das Diagramm erstellen lassen und das erstellte Diagramm in die Zwischenablage kopieren oder als GIF-, PNG- oder BMP-Datei abspeichern. Unter dem Menüpunkt Einstellungen verbirgt sich ein weiteres Fenster, mit dem man das Aussehen des Diagramms an seine Bedürfnisse anpassen kann.

Besonders wichtig ist der Menüpunkt "? - Schlüssel...", denn hier öffnet sich ein Fenster mit den Schlüsselbegriffen, die ein jeweiliges Element des Diagramms einleiten oder beenden. Diese Wörter sind in den Beispielen fett hervorgehoben. Die Schlüssel müssen sich immer am Anfang der Zeile befinden. Da bash durchaus auch mehrer Anweisungen in einer Zeile unterstützt muss man die Skripte hier eventuell ein wenig anpassen. Es stehen immer alle Schlüssel zur Verfügung. Man kann also durchaus bash- und Klartext-Schlüssel miteinander vermischen. Schlüssel, die ein Element beenden, werden im Diagramm nicht mit ausgegeben. Schlüssel, die ein Element einleiten, werden vollständig in das jeweilige Element mit übernommen. Kommentare, die am Anfang der Zeile mit einem # beginnen, werden ignoriert. Kommentare, die nicht am Anfang der Zeile beginnen werden ins Diagramm übernommen.

Beispiel 1: Bubble-Sort

fertig auf nein setzen
solange fertig = nein
  pos auf 0 setzen
  fertig auf ja setzen
  solange pos < anzahl
    wenn zahlen[pos] > zahlen[pos + 1]
      zahlen[pos] und zahlen[pos + 1] vertauschen
      fertig auf nein setzen
    ende wenn
    pos um 1 erhöhen
  ende solange
ende solange

Bubble-Sort

Beispiel 2: Großbuchstabe

#!/bin/bash

kleinbuchstaben='abcdefghijklmnopqrstuvwxyz'
grossbuchstaben='ABCDEFGHIJKLMNOPQRSTUVWXYZ'

antwort=$1
i=0
while test $i -lt ${#kleinbuchstaben}; do
 if test "${kleinbuchstaben:$i:1}" == "$antwort"; then
   antwort=${grossbuchstaben:$i:1}
 fi
 ((i+=1))
done
echo $antwort

Großbuchstabe

Zum Ausprobieren hier noch einmal die Beispiele zum Download: bubble-sort.txt und grossbuchstabe.sh