Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Mathematischen String Parsen (https://www.delphipraxis.net/99474-mathematischen-string-parsen.html)

BrightAngel 12. Sep 2007 19:58

Re: Mathematischen String Parsen
 
Hey! Guten Abend!
@Khabarakh: Und wie willst du mit einem Durchlauf den Term berechnen?? Du weist doch am Anfang noch nicht, was hinten für Rechenoperatoren auf dich zukommen... :shock:
Ich hab mir mal ne kleine recht effiziente Function geschrieben, die es auch rekursiv macht.
(ich habe immer einen teilterm übergeben und den zerlegt)
Aber die musste den term mehrfach durchlaufen...

Khabarakh 12. Sep 2007 20:21

Re: Mathematischen String Parsen
 
Zitat:

Zitat von BrightAngel
@Khabarakh: Und wie willst du mit einem Durchlauf den Term berechnen?? Du weist doch am Anfang noch nicht, was hinten für Rechenoperatoren auf dich zukommen... :shock:

Du hast es erfasst, einen kleinen Haken muss es geben ;) : man benötigt einen Stack für die Zwischenergebnisse (der Term wird quasi in UPN übersetzt und On-The-Fly ausgewertet). Sollte aber kein großer Dämpfer sein, mit rekursiven Methoden setzt man ja sowieso schon auf einen Stack auf. Wenn ich keinen gravierenden Denkfehler habe (was in Anbetracht der Tatsache, dass ich einen solchen Parser noch nie wirklich gecodet habe, durchaus im Bereich des Möglichen liegt :mrgreen: ), sollte sich der Parser abgesehen vom zweiten Stack wirklich mit einem Durchlauf (in dem er jeweils das derzeitige und nächste Zeichen (Lookahead-Symbol) auswerten können muss) zufrieden geben.

Nils_13 12. Sep 2007 21:50

Re: Mathematischen String Parsen
 
Ich habe mir den Thread nicht wirklich durchgelesen, aber die Wörter Binärsuche und Stapel sind mir aufgefallen. Es ist im Endeffekt egal, welche Variante du nimmst. Du kannst auch Tokens nehmen, wenn du willst, kommt trotzdem aufs gleiche raus. Richtig ätzende Sachen sparst du dir zum Glück, denn Klammern machen es, wenn alles rechenbar sein soll, echt schwierig. Je nachdem, wie faul du bist, hast du das in ein paar Tagen/Wochen/Monaten :mrgreen:/Stunden erledigt. Die Theorie ist simpel: Rekursion bis zum umfallen.

sirius 13. Sep 2007 08:24

Re: Mathematischen String Parsen
 
Zitat:

Zitat von Nils_13
denn Klammern machen es, wenn alles rechenbar sein soll, echt schwierig.

:gruebel: An welcher Stelle genau?

BrightAngel 13. Sep 2007 18:15

Re: Mathematischen String Parsen
 
also, falls es irgendjemand interessiert, wie ich es gelöst habe (ich bin da ja auch net soooo der Meister :-D - also bzgl. optimierungsvorschlägen: immer her damit.), der kann mir ja ne PM schicken...


Alle Zeitangaben in WEZ +1. Es ist jetzt 04:45 Uhr.
Seite 2 von 2     12   

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