Autor: Bergmann Martin MatNr: 9527180 BspNr: 4026 Kurzbeschreibung: Das Programm simuliert eine zweidimensionale, stark vereinfachte chemische Kettenreaktion Allgemein: Das Programm liest die Eingabe in einer Liste ein und wandelt die Zeichen anschlieend in Cardinal-Zahlen um. Wobei eine zweite Liste erzeugt wird welche die einzelnen Ziffern zwischenspeichert um die Zahl mit entsprechenden Zehnerpotenzen umzuwandeln. Durch das erste Zahlenpaar wird die Gre der Matrix festgelegt welche anschlieend in einer Unterroutine mit einer Liste erzeugt wird. Die Matrix wird danach mittels Baum untersucht und die Atome werden zur Explosion gebracht und spter ausgegeben. Eingabesatz: x x z1 z2 z3 z4 .... zn z(n+1) sx sy = \ / \ / \ / \ \/ \ / \/ Ende Matrixgre Zahlenpaare (keine Atome) Start der Kettreaktion Routinen: Initialisieren: Setzt die globalen Variablen auf definierte Werte. Lesen Liest ein Char ein und trgt es in eine Liste ein. Solange bis '=' Zeichen auftritt. Verarbeiten: Wandelt die Char in Zahlen um und detzt ein Fehler (ptr1,pt2) Bit wenn andere Zeichen auftreten. ptr1 .. Pointer ab wo in der Liste verarbeitet werden soll. ptr2 .. Gibt aktuelle Stelle zurck. GenMatrix: Erzeugt durch eine Liste ein Array. Suchen: Sucht ein bestimmtes Feld ab "Ptr" in der Matrix und setzt es (Ptr,Bit) auf "Bit". ErzMatrix: Verwertet die Zahlen aus der Eingabe und lscht die ange- gebenen Atome aus der Matrix. Legt auch die Startposition fest. Error: Gibt Fehlermeldungen aus. Finden: Sucht ein Feld in der Matrix mit dem Wert v als Info (Ptr,v) Ptr .. Knoten der untersucht werden soll v .. Zu suchender Info-Wert GenBaum: Lt die Atome in der Matrix explodieren und merk sich (Ptr,Rich) deren Position. Priortt der Explosionen: 1. Oben 2. Rechts 3. Unten 4. Links Ptr .. Zu verarbeitender Knoten Rich .. Richtung welche berprft werden mu. ErzBaum: Erzeugt den Baum (Root), und gibt den Anfangswert aus.