Parser in c++ schreiben
Verfasst: Mi Dez 21, 2011 6:20 pm
Hallo Leute,
Ich habe vor ein Konsolenprogramm zu schreiben mit dem man Widerstandsnetzwerke berechnen kann.
Das ganze soll so von statten gehen, dass man beispielsweise eingibt 500k - 300 || 1m
das - bedeutet in reihe geschaltet und || bedeutet parallel geschaltet. Sprich ein 500 k Ohm Widerstand ist in Reihe mit einem 300 Ohm Widerstand geschalten, die Summe aus diesen beiden Widerständen wird parallel zu einem 1 m Ohm Widerstand geschaltet.
Wie kann man realisieren, dass die Software in der Lage ist zu sagen okay hier ist ein - also muss der Wert links bzw. Rechts von dem Strich nach als Reihenschaltung betrachtet werden und sobald aber ein || auftaucht handelt es sich um eine Parallelschaltung.
Mir geht es hier nicht um Code Stringszerpflücken bekomme ich hin
Was mich interessiert ist die Theorie die dahinter steckt. Ich könnte das ganze mit tausenden if s machen.
Das ist aber unschön.
Mir schwebt da was von Backus Naur Form vor oder Binären Bäumen.
Bin ich da auf dem richtigen Weg ?
Könnte mir bitte jemand einen Denkanstoß geben.
Grüße Gizno
Ich habe vor ein Konsolenprogramm zu schreiben mit dem man Widerstandsnetzwerke berechnen kann.
Das ganze soll so von statten gehen, dass man beispielsweise eingibt 500k - 300 || 1m
das - bedeutet in reihe geschaltet und || bedeutet parallel geschaltet. Sprich ein 500 k Ohm Widerstand ist in Reihe mit einem 300 Ohm Widerstand geschalten, die Summe aus diesen beiden Widerständen wird parallel zu einem 1 m Ohm Widerstand geschaltet.
Wie kann man realisieren, dass die Software in der Lage ist zu sagen okay hier ist ein - also muss der Wert links bzw. Rechts von dem Strich nach als Reihenschaltung betrachtet werden und sobald aber ein || auftaucht handelt es sich um eine Parallelschaltung.
Mir geht es hier nicht um Code Stringszerpflücken bekomme ich hin

Was mich interessiert ist die Theorie die dahinter steckt. Ich könnte das ganze mit tausenden if s machen.
Das ist aber unschön.
Mir schwebt da was von Backus Naur Form vor oder Binären Bäumen.
Bin ich da auf dem richtigen Weg ?
Könnte mir bitte jemand einen Denkanstoß geben.
Grüße Gizno