AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Mit einem Array vom Typ String rechnen ?

Ein Thema von MarquiseDeSade · begonnen am 5. Jun 2007 · letzter Beitrag vom 5. Jun 2007
Antwort Antwort
Benutzerbild von MarquiseDeSade
MarquiseDeSade

Registriert seit: 18. Apr 2007
Ort: Mainz
55 Beiträge
 
Turbo Delphi für Win32
 
#1

Mit einem Array vom Typ String rechnen ?

  Alt 5. Jun 2007, 16:47
Hallo ihr Lieben

Ich programmiere derzeit einen Taschenrechner und möchte nun folgendes realisieren:
Der Benutzer gibt über Buttons(Zahlen 1-9) die gewünschten Zahlen ein und kann über Buttons(Operatoren für +; -; *; und /) nacheinander Werte berechnen. Über den "=" -Button soll dann die Berechnung stattfinden und das Ergebnis ausgegeben werden. Dieses Eingabenbeispiel soll zur Verdeutlichung herangezogen werden: 2+2*2 = 6
Da sich das Problem von Punkt vor Strich ergibt, wollte ich es mir so einfach wie möglich machen, sofern das geht. Und zwar irgendwie so, dass ich einen Array habe, sagen wir erstmal um es einfach zu halten von
test:array[1..10] of string; Die Prozedur für den Button "+" soll dann ungefähr so lauten:

Delphi-Quellcode:
procedure TForm1.Button_plusClick(Sender: TObject);

begin
  inc(i);
  test[i]:=(edit1.Text)+'+';
end;

So und den Array dann irgendwie so intern in einer Rheie ausgeben lassen, dass der Pc die Zeichen als auch die Zahlen erkennt und diese dann automatisch mit Punkt vor Strich berechnen kann. Denn wenn ich doch in Delphi die Rechnung einfach so einer Variablen zuordnen würde, erkennt es doch auch automatisch diese Regel, oder ??

Also so:
ergebnis:=2+2*2;

Oder geh ich das Problem einfach zu falsch an ?? Was der Rechner können muss, ist, dass hintereinander mehrere Zahlen eingegeben werden können, ohne Rücksicht auf Punkt vor Strich. Ah so, bin noch ein Anfänger

gruß tobias
  Mit Zitat antworten Zitat
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.275 Beiträge
 
Delphi 10.4 Sydney
 
#2

Re: Mit einem Array vom Typ String rechnen ?

  Alt 5. Jun 2007, 16:49
Hallo,

so einfach geht das nicht.
Suche hier mal nach Formelparser.


Heiko
Heiko
  Mit Zitat antworten Zitat
Benutzerbild von MarquiseDeSade
MarquiseDeSade

Registriert seit: 18. Apr 2007
Ort: Mainz
55 Beiträge
 
Turbo Delphi für Win32
 
#3

Re: Mit einem Array vom Typ String rechnen ?

  Alt 5. Jun 2007, 17:10
Mh, habe ich gemacht. Ist mir stellenweise einfach noch zu speziell und ich glaube, dass meine Idee nicht so toll ist, oder ?

Kann mir jemand vielleicht einen anderen Ansatz geben, wie ich das Prob lösen könnte ?
  Mit Zitat antworten Zitat
Benutzerbild von sirius
sirius

Registriert seit: 3. Jan 2007
Ort: Dresden
3.443 Beiträge
 
Delphi 7 Enterprise
 
#4

Re: Mit einem Array vom Typ String rechnen ?

  Alt 5. Jun 2007, 17:21
Was ist an den Parsern so speziell? Es ist so ziemlich genau das was du programmieren willst!
Dieser Beitrag ist für Jugendliche unter 18 Jahren nicht geeignet.
  Mit Zitat antworten Zitat
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.275 Beiträge
 
Delphi 10.4 Sydney
 
#5

Re: Mit einem Array vom Typ String rechnen ?

  Alt 5. Jun 2007, 17:42
Hallo,

korrekt, was soll daran sein.
Ich selber benutze übrigens CalcExpress.

Wenn du das selber machen willst,
bitte:
- zerlege den String in seine einzelnen Bestandteile
das wären Operatoren (+, - ...) und Operanden (z.B. 2, 3)
das geht über Pos(PosEx) und Copy
- baue einen Baum auf (Knoten sind die Operanden)
bei 2+3-1 sieht das also etwa so aus

+
2 3
-
1

naja, so etwa
Daniel, kannst du hier nicht CorelDraw einbauen


- arbeite die einzelnen Operanden ab.

Das macht das CalcExpress selber, warum also tippern ?


Heiko
Heiko
  Mit Zitat antworten Zitat
Benutzerbild von MarquiseDeSade
MarquiseDeSade

Registriert seit: 18. Apr 2007
Ort: Mainz
55 Beiträge
 
Turbo Delphi für Win32
 
#6

Re: Mit einem Array vom Typ String rechnen ?

  Alt 5. Jun 2007, 18:26
Hallo

"Zu speziell" meinte ich auf den Bezug hin, dass es für mich als richtig blutiger Anfänger wohl doch schon zu weit geht. Ich denke, nein ich weiss, dass es mir noch an zu vielen Grundlagen fehlt. Habe bis jetzt erst Erfahrung in TPW sammeln können.

Ich lese mir nunmal Informationen zum Parsen durch und werde mich bei Fragen wieder an euch wenden....

  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:50 Uhr.
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