Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Mal wieder ein Taschenrechner (https://www.delphipraxis.net/140507-mal-wieder-ein-taschenrechner.html)

Flemichin 19. Sep 2009 14:19


Mal wieder ein Taschenrechner
 
Ich weiß, dass ihr es langsam satt habt, aber ich habe keine Ahnung von Delphi. Dennoch möchte ich einen "relativ guten" Taschenrechner programmieren. Ich hab mir auch einiges vorgenommen:

- Ein Editfeld, in dem die Zahlen 0-9 und Komma erscheinen, wenn ich die Buttons drücke
- +, -, *, /
- Das Ergebnis meiner Rechnung soll erst erscheinen, wenn ich den = Button drücke (Wenn das überhaupt geht)

Frage: Wie bekomme ich das hin?

patti 19. Sep 2009 14:40

Re: Mal wieder ein Taschenrechner
 
Wenn du ganze Terme ausrechnen willst, also mit Klammern und Punkt vor Strich etc., dann kommst du um einen Mathe-Parser nicht drum rum. Dieser muss dann die eingegebene Zeile analysieren und dann nach den mathematischen Regeln berechnen. Einen Mathe--Parser zu schreiben ist eine ganz schön haarige Aufgabe und für einen Anfänger beinahe unlösbar. In diesem Fall könntest du auf eine fertige Komponente/Unit etc. zurückgreifen.

Patti

Der.Kaktus 19. Sep 2009 14:43

Re: Mal wieder ein Taschenrechner
 
Ein Maskedit ist erstmal Pflicht ;-)

Flemichin 19. Sep 2009 14:53

Re: Mal wieder ein Taschenrechner
 
Also auf diesen Parser kann ich verzichten ^^.
Was ist denn ein Mask-Edit? Jetz kommen wir meiner Frage schon etwas näher...

himitsu 19. Sep 2009 14:53

Re: Mal wieder ein Taschenrechner
 
tut mir Leid, aber hier kann ich nur noch auf die Suchfunktion verweisen
> Hier im Forum suchenTaschenrechner

alles was du möchtest wurde schon mehrmals genannt und durchgekaut.

unter Anderem vor Kurzem auch Dieses
http://www.delphipraxis.net/internal...t.php?t=165053

[add]
Delphi-Referenz durchsuchenTMaskEdit

patti 19. Sep 2009 15:18

Re: Mal wieder ein Taschenrechner
 
Zitat:

Zitat von Flemichin
Also auf diesen Parser kann ich verzichten ^^.

Dann wirst du aber nur einzelne Rechnungen machen können, also nichts komplexes, wie z.B.

Code:
4*3+2*7
sondern halt nur einzelne Rechenschritte.

Für den Anfang ist das sicherlich trotzdem eine sinnvolle Übung, da man einiges über Delphi und die Komponenten lernen kann. Aber wie himitsu schon geschrieben hat: in der DP gibt es schon einiges dazu. Wenn du natürlich konkrete Fragen hast, kannst du diese hier selbstverständlich stellen.

Patti

Flemichin 19. Sep 2009 15:20

Re: Mal wieder ein Taschenrechner
 
Achso, dann bräuchte ich nur eine Anleitung oder einen Link, wo ich herausfinden kann, wie dieses Parser zu programmieren ist =)

DeddyH 19. Sep 2009 15:34

Re: Mal wieder ein Taschenrechner
 
So etwas programmiert man aber nicht einfach so. Du könntest Dir aber z.B. HAM einmal anschauen.

himitsu 19. Sep 2009 15:48

Re: Mal wieder ein Taschenrechner
 
In dem oben schon verlinkten Thread ging es um einen Parser und da wurde auch beschieben, wie man vorgehn könnten.
Außerdem wurde dort wiederum der "kleine" Thread, samt Parser, von mir verlinkt, welcher als OpenSource verfügbar ist, also samt QuellCode zum Nachgucken.

Flemichin 19. Sep 2009 16:27

Re: Mal wieder ein Taschenrechner
 
Gut, Leute, eine Frage aber noch. Ich bitte euch, sie einfach mit dem von mir gefragten Code zu beantworten.

Habe durch rumprobieren herausgefunden, wie ich von einem Button durch einen Klick drauf die Zahl, für die er steht, ins Editfeld zu bekommen:
var test: Integer;
begin

test := StrToInt (Bt1.Caption);
EdZahl1.Text := IntToStr (test);

end;

Das Problem ist: wenn ich beispielsweise die Zahl "12" angezeigt bekommen will, geht das nicht. Er sagt dem Editfeld entweder nur 1 oder nur 2, aber nicht sowohl 1 als auch 2.

BITTE!!! einfach nur beantworten!


Alle Zeitangaben in WEZ +1. Es ist jetzt 11:11 Uhr.
Seite 1 von 2  1 2      

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