Re: Der HAM-Parser
Danke, funktioniert Problemlos :)
|
Re: Der HAM-Parser
Liste der Anhänge anzeigen (Anzahl: 1)
kann ich den Parser in mein Delphiprogramm einbauen, sodass ich einfach auf dem Formblatt die Funktion eingebe und diese in eine Funktion übertragen wird, die den passenden Y-Wert der Funktion berechnet?? Ich baue nämlich die numerische Integration (Sehnentrapezregel) in mein Programm als Anhang für ne Facharbeit.. Und das ist nicht so schön, wenn man die Funktion immer in der Unit verändern muss...
Bitte um Hilfe.. Hab mir den Parser angeguckt und hatte keine Ahnung ob, und wie er mir helfen kann..... Danke PS: im Anhang mein "Programm".... |
Re: Der HAM-Parser
Kann mir bitte jemand helfen ?? (siehe letzter Beitrag....)
Ich habe mir den HAM-Parser geholt, komme mit ihm aber nicht klar.. Mit welcher procedure übergibt man die Funktion an den Parser und welche Ausgabe bekomme durch welche Funktionen des Parsers?? Ich bitte um Hilfe!! |
Re: Der HAM-Parser
Heya,
Zitat:
Variablen und Funktionen, die du in der Formel verwendest, sollten unbedingt im Parser registriert sein, sonst gibt es Fehler. bis dann |
Re: Der HAM-Parser
Danke Dax...
Werde ich mal ausprobieren... Ich habe mir alle Demos mal angeschaut, aber der Umfang und einige Datentypen, die ich nicht kenne, haben mich als "Anfänger" (habe Delphi in Informatik 12 GK in der Schule seit 2 Jahren...) sehr verwirrt... Danke... mfg |
Re: Der HAM-Parser
|
Re: Der HAM-Parser
Liste der Anhänge anzeigen (Anzahl: 1)
der rechnet mit komplexen Zahlen.. Ich habe aber keine Ahnung von komplexen Zahlen!!!
In der Beschreibung sagt der Autor, man könne den Parser aber auch für "normale" Funktionen nutzen... Wie das??? Wie kann ich eine Variabele festlegen (zum Beispiel x (ganz einfallsreich)), die ich dann in einer Funktion benutzen kann?? (z.b. 1/(1+x^2)) Kannst du mir helfen den sinnvoll einzubauen??? Hier die neuste Version meines Programms im Anhang.... |
Re: Der HAM-Parser
Auch bei Dizzys Parser liegt ein Beispiel bei. War glaube ich ein Performance Test.
--- So habe es gerade noch mal geöffnet: In der Demo steht:
Delphi-Quellcode:
p := TCQParser.Create; //p: TCQParser;
p.NumberFormat := nfReal; p.SetVariable(A, pi2); p.Parse(formula); // forumula ist ein String mit der Formel :) |
Re: Der HAM-Parser
Super!! Danke. werde ich ausprobieren..
Wofür steht A,pi2 ?? |
Re: Der HAM-Parser
Zitat:
Schritt für Schritt:
Delphi-Quellcode:
Parse und Solve sind voneinander getrennt, damit es möglich ist die Werte von Variablen nach dem Parsen zu ändern. Das spart bei jeder Änderung eine Menge Rechenzeit, da das Parsen and sich recht viel CPU-Arbeit (Zeit) kostet, die man so nur einmal machen muss.
procedure Foo;
var p: TCQParser; v: Double; e: Double; begin v := 10; p := TCQParser.Create; // klar, Parser erstmal instantiieren p.NumberFormat := nfReal; // Dem Parser mitteilen, dass er bitte mit normalen Zahlen rechnen soll ;) p.RegisterVariable('x', v); // Dem Parser eine Variable 'x' bekannt machen, die den Wert von v enthalten wird. // p.SetVariable(...); Ist wie RegisterVariable, aber für bereits damit erzeugte Variablen. p.Parse('(20-x)^2'); // Parsed die Formel. D.h. bereitet sie intern aufs's Ausrechnen vor. p.Solve(e); // Rechnet die Formel aus, und schreibt das Ergebnis in e. (e=100 hier) end; Der Parser ist somit dafür gerüstet, ein und die selbe Formel in der sich nur Werte ändern, immer und immer wieder zu lösen ohne zu viel Zeit zu verbraten. Schönen Gruss, dizzy |
Alle Zeitangaben in WEZ +1. Es ist jetzt 05:12 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