Entwickler-Ecke

Sonstiges (Delphi) - Mathe Funktion aus Editfeld auslesen.


SoulJ03R - Di 09.01.07 18:24
Titel: Mathe Funktion aus Editfeld auslesen.
Hallo,
ich würde gerne Programme schreiben, mit denen man zum Beispiel numerische Integration oder numerische Lösung von Gleichungen durchführen kann.
Hierfür wäre es nötig, dass man in ein Editfeld die vorgegebene Funktion eingibt. Nun ist mein Problem, dass ich mit dem "x" aus der Funktion weiterrechnen möchte. Zahlenwerte sollen automatisch für das "x" eingesetzt werden und die Funktion soll berechnet werden. Kann mir da jemand weiterhelfen??


Moderiert von user profile iconChristian S.: Topic aus Delphi Language (Object-Pascal) / CLX verschoben am Di 09.01.2007 um 17:28


Jetstream - Di 09.01.07 18:35

Du brauchst einen "Parser". Such einfach mal hier im Forum.


Tilo - Di 09.01.07 22:00

Um einen Funtionsparser zu erstellen ist es hilreich den Eingangsstring(aus dem Editfeld) in Terme zu zerlegegen und jeden Term separt zu bearbeiten.
aus


Quelltext
1:
3x*4-x^9/sin(x)                    


wird


Quelltext
1:
2:
3:
4:
5:
Term[0] +3x
Term[1] *4
Term[2] -x^9
Term[3] /1
Term[4] sin(x)


So kann dann in jedem Term gespeichert werden:


Die Terme bilden die äußere Funktion und sind in einer Liste/Array gespeichert
Der Rechenoperation können Wertigkeiten zugewiesen werden -> Punkt vor Strich, Winkel vor Punkt
Durch die Eigenschaft innere Funktion kannst Du geklammerte Ausdrücke bearbeiten.
Dies ist ein Vorschlag.


SoulJ03R - Di 09.01.07 23:19

Danke schonmal für die Antworten. Ich werd mich mal ransetzten und n bisschen herumprobieren.