![]() |
Taschenrechner programmieren...
Hallo alle zusammen,
ich muss als Hausaufgabe einen Taschenrechner programmieren, mit den Grundrechenarten und so weiter. Das ist auch alles nicht wirklich ein Problem da ich die entsprechenden Befehle für Wurzel und Quadrieren kann. Desweiteren wollte ich den Taschenrechner wie den Windows Taschenrechner mit nur einem Eingabefeld gestalten, jedoch komm ich damit in Probleme wo ich nicht wirklich weiterkomme. Wollt euch mal fragen wie die Logik hinter dem Windows Taschenrechner ist... Ich hoffe ihr versteht mein Problem. Mfg Uplink |
Re: Taschenrechner programmieren...
:hi:
Zitat:
Wo ist denn das Problem bzw. wo kommst Du nicht weiter? Ein Edit und Buttons. Das ist die Logik vom Windows-Taschenrechner :mrgreen: |
Re: Taschenrechner programmieren...
Im Prinzip wird die aktuelle Eingabe beim Betätigen einer Funktion in eine Variable gepackt und das Edit geleert. Bei der nächsten Funktion wird die Variable mit der aktuellen Eingabe verwurstet und das zwischenergebnis in der Variablen gespeichert usw. bis auf = gedrückt wird und das Ergebnis in der Anzeige landet.
|
Re: Taschenrechner programmieren...
Ok ich versuch mich nochmal ^^.
Wenn ich jetz mit Hilfe der Buttons von mir aus 123+123+123 eingebe kommt halt 369 raus, sollte logisch sein :D Jetzt wollt ich wissen wie ich das halt zu berwerkstelligen habe, weil die Operation ja schon vor der Eingabe des zweiten Summanden aufgerufen wird. Also wenn ich jetzt x + y rechnen würde , würde ich beim Klick auf den "+" Button ja erst das x gegeben haben und nich x und y. Theoretisch müsste ich irgendwie die Additions-Prozedure anhalten und ihr sagen sie soll solange warten bis y auch verfügbar ist, nur weiß ich nicht wie ich das machen soll :?: :?: :?: |
Re: Taschenrechner programmieren...
@ Phoenix woher weiß dann der Taschenrechner das mal und durch vor plus und minus kommen?
|
Re: Taschenrechner programmieren...
zahl ins edit dann taste drücken dann wird edit leer 2 zahl [...] rechnen dücken und im edit steht das ergebnis
wo is das prob? |
Re: Taschenrechner programmieren...
Das musst Du ihm beibringen :)
Klassische Fallunterscheidung. |
Re: Taschenrechner programmieren...
:hi:
Dann würde ich an deiner Stelle, die '+'-Funktion nicht mit dem Klick auf den '+'-Button ausführen, sondern erst beim Drücken der '='-Taste. Bei der '='-Taste dann den String durchgehen und nach Operationen schauen, diese dann ausführen. Stichwort parsen könnte behilflich sein :) edit[roter Kasten]: Zitat:
|
Re: Taschenrechner programmieren...
ok ganz einfach edit1.text musch ner variable zuweisen dann drückst du n button der sagt was passieren soll also z.b. +
das merken wir uns auch in ner variable und dann merken wir uns auch das nächste was im edit steht nachdem wir es beim auf den button drücken leer gemacht haben dann drücken wir den button rechnen und 1.var +2.var [...] werden gerechnet und dem edit übergeben eigtl. ganz simple |
Re: Taschenrechner programmieren...
Ja naja ich meine, wenn mein Taschenrechne mehrere Operationen rechnen kann, dann kann er auch nur eine rechnen ;)
Ich würde es halt auch gerne bevorzugen, wenn halt nach jeder Operation das entsprechende Zwischenergebnis kommt. Ich weiß aber nicht wirklich wie ich das programmieren soll, hab wahrscheinlich ne Denkblockade oder so :D @ passy: wie kann man denn nach deinem Schema das hier rechnen: 123+123*123, ohne das man irgendwie zwischendurch auf rechnen klickt sondern halt erst am Ende. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:52 Uhr. |
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