![]() |
Re: Problem mit Mathe-Parser
@NamenLozer: so schreibt aber kein Mensch und da Vorzeichen die höchste Priorität haben, ist praktisch auch keine Klammer nötig
Zitat:
1. * 2. / 3. - 4. + aber eigentlich ist die korrekte Reihenfolge so 1. Vorzeichen +- 2. Punktrechnung */ 3. Strichrechnung +- oder auch nacheinander 1a. Vorzeichen + 1b. Vorzeichen - 2a. Punktrechnung * 2b. Punktrechnung / 3a. Strichrechnung + 3b. Strichrechnung - (a und b kann auch vertauscht werden) schau mal dort ![]() das Problem ist auch, daß du ungeprüft einfach alles miteinander verrechnest also bei 1--2 wird 1 - "-" gerechnet die Vorzeichenberechnungen müßtest du also noch vor die Berechnungen von * und / verlegen und dann z.B. nur bei folgender Bedingung diese Berechnungen ausführen ((i = 0) or istKeineZahl(sl[i-1])) and (sl[i] = '-') and istZahl(sl[i+1]) |
Re: Problem mit Mathe-Parser
also ich hab das mit den vorzeichen noch ergänzt, es will aber immernochnicht klappen:
Delphi-Quellcode:
//Vorzeichen
ende:=false; i:=0; if arr.count>1 then begin while not(ende) do begin if ( (i = 0)or(not(isReal(arr[i-1]))) )and(arr[i]='-')and(isReal(arr[i+1])) then begin arr[i]:=floattostr(-strtofloat(arr[i+1])); arr.delete(i+1); i:=i-1; end; i:=i+1; if i>=arr.count-1 then ende:=true; end; end; |
Re: Problem mit Mathe-Parser
hab den fehler entdeckt: die funktion isReal hat negative werte nicht als reale werte angesehen
also vielen dank für die tolle hilfe. hat mich echt weitergebracht :) |
Re: Problem mit Mathe-Parser
gern geschehen und viel Spaß noch, mit deinem Parser :)
|
Re: Problem mit Mathe-Parser
[nicht wichtig]
mathe parser (man mag es nicht glauben, aber das Zusammengesetzte findet die Suchfunktion nicht, wenn es auseinander ist) sind nur'n paar Stichworte für die Suchfunktion |
Re: Problem mit Mathe-Parser
Zitat:
|
Re: Problem mit Mathe-Parser
Zitat:
Oder haben wir in der DDR noch anders gerechnet? :gruebel: |
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:00 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