Einzelnen Beitrag anzeigen

ArchaicSeraphim

Registriert seit: 11. Nov 2007
Ort: Niedernhausen
31 Beiträge
 
Delphi 7 Personal
 
#1

Arrays mit drei Dimensionen... nicht einfach -.-

  Alt 13. Nov 2007, 19:29
Hi Leutz,

Ich habe ja in der vergangenen Zeit viele Fragen zu arrays bzw. Automaten gestellt... ^^ Hier kommt die wahrscheinlich letzte: Wie kann ich drei Variablen in einem dynamischen Array speichern? Ich brauche ja die Zustände, den Kellerzustand und die Eingabe. Und dann muss dieses Array auch zwei Sachen ausgeben: Neuer Zustand und Kelleroperation.

Bsp.: Wenn ich überprüfen lassen will, ob ein eingegebener Term dem Muster A^n*B^n entspricht, kann ich Zeichen für Zeichen vorgehen und habe dann die vier Zustände zS (Start- und Zielzustand), zA (mehr As als Bs), zB (mehr Bs als As) und zF (Fehlerzustand, aus dem man nie wieder raus kommt). Das Problem ist aber, dass ich jeden dieser Zustände noch aufteilen muss, je nachdem, ob in meinem Stack/Keller schon eine Marke, die Startmarke oder nichts liegt. Und wie gesagt müsste die Ausgabe ja auch beinhalten a) den neuen Zustand und b) die Kelleroperation -push, pop oder nop - z.B. wenn ein A kommt, ich im Zustand zB bin und nur eine Marke auf dem Stack liegt: zS|pop.

Wie kann ich sowas machen? Ich krieg's einfach nicht in mein Hirn. Ohne den Keller wäre das einfacher, dann könnte man einfach ein Array array[Zustand, Eingabe] of NeuerZustand machen. Das wäre quasi die Automatentabelle.
Kann mir einer helfen, das auch mit drei Dimensionen zu schaffen? pls?

Danke schon mal, falls das ginge *unterwürfig*

[edit=Jelly]
Es geht um diesen Keller
Nächstes Mal bitte selbst editieren...
Mfg, Jelly[/edit]
In diesem Sinne,

Arc
  Mit Zitat antworten Zitat