Datum Uhrzeit | Gedenktage | Namenstage |
Malte - Software - MNSD
MNSD 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 mnsd.zip
Versionsgeschichte
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
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
Zum Ausprobieren hier noch einmal die Beispiele zum Download: bubble-sort.txt und grossbuchstabe.sh