Entwickler-Ecke

Algorithmen, Optimierung und Assembler - Kellerautomat


Dude1988 - Mo 10.11.08 19:26
Titel: Kellerautomat
Hallo zusammen!
Ich bin ein Delphi-Neuling. Allerdings sollen wir jetzt für die Schule einen Kellerautomat für a^n, b^n in Delphi programmieren. Zudem soll noch angezeigt werden, in welchem Zustand sich das Programm bzw der Automat befindet und, was dort gerade gemacht wird (also z.B. in einer Listbox).
Könnt ihr mir da weiterhelfen? Weil ich weiß gar nicht, wo und wie ich da überhaupt anfangen soll...

Danke schonmal im Vorraus!


Hidden - Mo 10.11.08 19:32

Hi,

Was genau ist ein "Kellerautomat"? :gruebel:

Wir sind sicher gerne bereit, dieses Projekt ein wenig zu begleiten. Stell' dazu denn am besten konkrete Fragen.

Hast du schon einen Ansatz?

mfG,


Delete - Mo 10.11.08 19:38

Kellerautomat [http://de.wikipedia.org/wiki/Kellerautomat]. Da ist sogar ein Beispiel in C-Code enthalten ;)


Dude1988 - Mo 10.11.08 21:24

Ich habe noch gar keinen Ansatz, weil ich einfach nicht weiß, wie ich anfangen soll, weil ich noch nie mit Delphi gearbeitet habe.


alzaimar - Mo 10.11.08 22:26

[ ] Du hast nie aufgepasst.
[ ] Jetzt hast Du ein Problem.

(Mehrfachnennungen möglich)


Tilo - Mo 10.11.08 22:46

Zum Anfang kannst Du dir doch erstmal die GUI basteln.
Du brauchst:
a) Eingabemöglichkeit für die Operanden
b) Eingabemöglichkeit für die Operatoren und Executer ("Enter", "los", "rechne")
c) Ausgabemöglichkeit für das Resultat
d) Ausgabemöglichkeit für das Log

Nächster Schritt:
"simuliere" doch den Automaten. Stell Beispiel für Eingaben, Operationen und ähnliches auf und notieren dies auf ein Blatt. hinzu schreibst Du was der Automat machen soll und wie es sich dann am Bildschirm darstellt.

Danach (vielleicht auch schon zwischen durch) solltest Du in der Lage sein etwas Code zu schreiben.
Falls Du ein Beispiel haben möchtest sag bescheid. Ich hab da mal einen UPN-Rechner notiert. Der ist teilweise vergleich mit einem Kellerautomaten. Das Beispiel gibst aber erst wenn Du einen Screenshot deiner GUI postet. Ferner gibst auch nur das Programm. Den QuellCode must Du schon selbst schreiben(Lehrer stellen keine Aufagben die nicht zu bewältigen sind außer die Nichtlösbarkeit ist die Lösung ).


Hidden - Mo 10.11.08 22:48

user profile iconalzaimar hat folgendes geschrieben Zum zitierten Posting springen:
Demotivierendes
Kann doch sein, dass sie im unterricht mit verscheidenen Programmiersprachen gearbeitet haben, und noch nicht mit Delphi(glaube ich irgendwie selber nicht :D).

Wen dir/euch die Grundkenntnisse fehlen, empfehle ich mal den Crashkurs von Christian S. [http://www.christian-stelzmann.de/artikel/CrashkursReloaded/].

mfG,


Dude1988 - Mi 19.11.08 14:17

soo ich hab jetzt mal was programmiert.. allerdings nur mit tausend if-bedingungen... kann mir jemand kurz erklären wie ich das mit case of mache? damits schöner aussieht.. oder meint ihr ich bekomme punktabzug wenn ich das mit lauter if's geschrieben hab? weil das programm läuft


McSteel - Mi 19.11.08 14:37

zeig dein Code. dann antworten sicherlich jmd dir.


alzaimar - Mi 19.11.08 15:07

Erste Grundsatz: Hauptsache, es läuft.
Zweiter Grundsatz: Dann schmeiss den ersten Grundsatz auf den Müll, und mach es richtig.

Bei Dir reicht, das der 1.Grundsatz.


Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
If a=1 then Foo();
If a=2 then Bar();
...
Case a of
  1: Foo();
  2: Bar();
End;


Dude1988 - Mi 19.11.08 15:14

also hier ist mein quelltext, um das wort zu prüfen:

hab den quelltext rausgenommen, weil die anderen aus meinem kurs danach googlen und bevor der lehrer dann was sagt


Horst_H - Mi 19.11.08 15:32

Hallo,

benutze delphi Tag's beim editieren 'Bereiche' klicken. Cursor vor dem Quelltext dann '+' neben 'Bereiche Delphi' anklicken.
Cursor ans Ende des Quelltextes und wieder '+' klicken.
Und bitte vernünftig einrücken , damit die If else richtig abklappert
Gruß Horst