Entwickler-Ecke

Sonstiges (Delphi) - Taschenrechner mit nur einem TEdit?? Arrays??


rob87 - Di 07.08.07 11:34
Titel: Taschenrechner mit nur einem TEdit?? Arrays??
Hallo,

wie soviele hab auch ich mich der Sache angenommen und versuche nun einen Windows Taschenrechner in Delphi selbst zu programmieren.

Nun bin ich soweit, dass ich die Variable "zahl1" belegen und nach einem Klick auf den Button "Berechnen" in einem Panel ausgeben kann.


Mein Problem ist nun, dass ich momentan nicht weiter weiß, wie ich des mit den weiteren Zahlen mach. Ich muss meinem Programm irgendwie beibringen, dass sobald ein Operator gewählt worden ist er die zweite Zahl belegt.... Oder irgendwie so ähnlich.
Wobei es bei mir momentan an der Logik scheitert.

?????


Narses - Di 07.08.07 11:54

Moin!

Hier ist ein Beispiel für so einen Taschenrechner [http://www.delphi-forum.de/viewtopic.php?p=398242#398242], vielleicht taugt es ja als Anregung. ;)

cu
Narses


rob87 - Di 07.08.07 13:17

Nich schlecht.
Aber der Quelltext is ganz anders wie bei mir. ;-)


Könntest du mir event. kurz erklären, wie du des "logisch" gemacht hast. Also mit den weiteren Zahlen, usw..??


Narses - Di 07.08.07 13:35

Moin!

user profile iconrob87 hat folgendes geschrieben:
Nich schlecht.

Danke. ;)

user profile iconrob87 hat folgendes geschrieben:
Könntest du mir event. kurz erklären, wie du des "logisch" gemacht hast. Also mit den weiteren Zahlen, usw..??

Das ganze basiert auf einer Zustandswechseltabelle (ist im Quelltext als Kommentar enthalten): es wird bei jedem "neuen" Zeichen die Kombination aus dem aktuellen und dem letzen Zeichen ausgewertet und abhängig davon dann eine Aktion ausgeführt. Schau dir halt mal den Quelltext an und stell konkrete Fragen zu entsprechenden Abschnitten. :idea:

cu
Narses


rob87 - Di 07.08.07 14:19

Ich habs nun hingekriegt. Allerdings macht er mir immer noch Fehler.

Er löscht mir des EditFeld nicht, sobald ich nach einem Operator eine zweite Zahl eingeben will. Er schreibt einfach danach weiter.

Ich hab euch mal mein Projekt zum Donwload hochgestellt.