Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Aus String ein Operationszeichen machen (https://www.delphipraxis.net/36995-aus-string-ein-operationszeichen-machen.html)

Christian18 29. Dez 2004 11:37


Aus String ein Operationszeichen machen
 
Hallo,

wie kann ich aus einen String ein Operationszeichen haben??? Ich habe in meinen String (s) folgende Operationszeichen gespeichert.

s:='+'

oder

s:='-'

oder

s:='*'

oder s:='/'

wer kann mir helfen???

mfg

Christian Seehase 29. Dez 2004 11:45

Re: Aus String ein Operationszeichen machen
 
Moin Christian,

meinst Du sowas

Delphi-Quellcode:
case s[1] of
  '/' : ...
  '*' : ...
//...
end;
?

Christian18 29. Dez 2004 11:45

Re: Aus String ein Operationszeichen machen
 
Zitat:

Zitat von Christian Seehase
Moin Christian,

meinst Du sowas

Delphi-Quellcode:
case s[1] of
  '/' : ...
  '*' : ...
//...
end;
?

ja genau

Oxmyx 29. Dez 2004 11:53

Re: Aus String ein Operationszeichen machen
 
Einfach eine Fallunterscheidung einbauen... so wie oben mit der case-Anweisung und dann für jeden der vier Fälle eben eine andere Rechnung.

Christian18 30. Dez 2004 19:02

Re: Aus String ein Operationszeichen machen
 
ja ok und wie muß ich meine variable deklarieren in der ich dann das operationszeichen speichere???

Dax 30. Dez 2004 19:10

Re: Aus String ein Operationszeichen machen
 
So ginge es:
Delphi-Quellcode:
type
  TOperation = (Plus, Minus, Multiply, Divide);

case s of
  '/' Operation := Divide;
  // ...
end;

Nikolas 30. Dez 2004 21:26

Re: Aus String ein Operationszeichen machen
 
Einen Typ dem man dann etwa so benutzt

Delphi-Quellcode:
var
foo : TCalcOperator

foo:= '+';
.
.
A= B foo C;
gibts leider nicht.

Du musst dann in die Fallunterscheidung wie Christan sie gezeigt hat, für jeden Fall die Rechnung hinschreiben, also etwa so
Delphi-Quellcode:
case s of
'+': A:= b+c;
'-': A:= b-c;
usw
end;

Christian18 31. Dez 2004 15:07

Re: Aus String ein Operationszeichen machen
 
sorry ich hab mich geirrt. ist schon gut.

Dax 31. Dez 2004 15:09

Re: Aus String ein Operationszeichen machen
 
TCalcOperator ist kein Vordefinierter Typ von Delphi. In diesem Fall sähe die Deklaration so aus:
Delphi-Quellcode:
type
  TCalcOperator = type Char;

supermuckl 31. Dez 2004 15:12

Re: Aus String ein Operationszeichen machen
 
christian guck mal genauer hin. er hat dir ein beispiel wie es nicht funktioniert gepostet, und darunter eins das funzen sollte
und du hast das nicht funzende benutzt ;)


Alle Zeitangaben in WEZ +1. Es ist jetzt 15:42 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