Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Variable Variablen (https://www.delphipraxis.net/40279-variable-variablen.html)

Binärbaum 13. Feb 2005 17:42

Re: Variable Variablen
 
Zitat:

Zitat von Remake
Ja genau, den abstrakten Datentyp mein ich (sorry, ich bin eingedeutscht..).

So, ich habe ein Spielfeld. Jedes Feld ist ein Keller. Von der Position von der man kam (sagen wir Feld 1) soll der Spielstein mit Feld1.pop rausgenommen werden und in/auf das Feld wo man hinrückt (sagen wir Feld 3) mit Keller3.push(Stein) eingefügt werden.

Ich könnte das ganze mit einer Case of Anweisung machen, da ich gegeben habe, von welchem Feld der Stein kommt und wohin er soll - aber geht es nicht anders?

Hmm.. drei Felder, und auf jedes kann man Steine drauflegen oder wegnehmen und auf eine anderes Feld verschieben, wenn ich das richtig verstanden habe.
Das erinnert mich irgendwie an das Problem, welches als "Towers of Hanoi" bekannt ist. :)
Willst du das programmieren, oder liege ich da falsch mit meiner Vermutung?

MfG
Binärbaum

Binärbaum 13. Feb 2005 17:53

Re: Variable Variablen
 
Zitat:

Zitat von Remake
Ich könnte das ganze mit einer Case of Anweisung machen, da ich gegeben habe, von welchem Feld der Stein kommt und wohin er soll - aber geht es nicht anders?

Das könnte man als Array so machen (Pseudocode):
Delphi-Quellcode:
var
 Spielfeld: array [1..3] of Keller;
 von, nach: Byte;//Start- /Zielfeld des Steines
...
 von:= 1;
 nach:= 3;
 Spielfeld[von].pop(Stein);//nimmt Stein vom Feld mit Nr. von (hier: 1)
 Spielfeld[nach].push(Stein);//legt Stein auf Feld mit Nr. nach (hier: 3)
Dann müsste man nur noch den Datentyp Keller vernünftig implementieren.

MfG
Binärbaum

Remake 14. Feb 2005 17:48

Re: Variable Variablen
 
Nee, aber das Spiel hatte ich mir mal als Beispiel angeguckt.
Ich will Backgammon machen (wird ein Projekt für die Schule). Das mit den drei Kellern war mehr beispielhaft gemeint oben. Bei Backgammon sind es dann 24 (+1 out +1 home).

Aber danke für dein konkretes Beispiel. Ich werde mal sehen, ob ich es so mache, oder jetzt doch auf die Methode mit der Case Abfrage ausweiche.

Gruß
Remake


Alle Zeitangaben in WEZ +1. Es ist jetzt 18:38 Uhr.
Seite 2 von 2     12   

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz