Aufgabe 16: (Parser)
Schreiben Sie einen Parser für mehrstellige ganze Zahlen mit oder ohne Vorzeichen. Auch ein positives Vorzeichen soll erlaubt sein.
Entwickeln Sie zunächst eine Grammatik, die sich für einen Recursive-Descent-Parser eignet. Passen Sie hierzu die Grammatik für einstellige Zahlen entsprechend an.
Programmieren Sie anschließend ein Modul NumberParser, in dem Sie schulmäßig die Produktionen Ihrer Grammatik in entsprechende Funktionen umsetzen.
Testen Sie den Parser mit den Eingabewörtern +456, 007 und ++5.
Aufgabe 17: (Parser)
Kombinieren Sie die Grammatik für Additions-/Subtraktions-Ausdrücke mit der Grammatik für mehrstellige ganze Zahlen aus der vorigen Aufgabe, sodass auch Ausdrücke wie beispielsweise -17+-4+21 gültig sind.
Programmieren Sie anschließend ein Modul AddSubParser und setzen Sie schulmäßig die Produktionen Ihrer Grammatik in entsprechende Funktionen um.
Testen Sie den Parser mit den Eingabewörtern 7 und +456+-007+5.