Syntaxanalyse von vollständig geklammerten arithmetischen Ausdrücken


Syntaxanalyse eines Ausdrucks folgender Backus-Notation, wobei Terminale direkt, Nichtterminale in spitzen Klammern dargestellt sind:
<K> ::= 0|1|2|3|4|5|6|7|8|9|<K><K>
<OP> ::= +|-|*|/|^
<FKT> ::= -|sin|cos|tan|lg|ln
<AUS> ::= x|<K>|<FKT><AUS>|(<AUS><OP><AUS>)

Beachte: Keine Leerzeichen als Trennzeichen erlaubt!
Beispiel: ((sinx/lg(2*x))-(x^3))


Funktionen zur Dateiverwaltung:

Headerfile zur Syntaxanalyse

Implementation des Headerfiles


Demonstration zur Syntaxanalyse:

Syntaxanalyse, von links nach rechts

Bildschirmausgabe für das Beispiel

Bildschirmausgabe für ein fehlerhaftes Beispiel


makefile dazu



Zurück zur Startseite

HTML-Umsetzung: Dr. Monika Meiler 03. April 2002 15:25 MEZ