Dr. Andreas Borchert Sektion Angewandte Informationsverarbeitung 28. April 1999
Ingo Melzer Blatt 3


[c]



Allgemeine Informatik II (SS 1999)


Abgabetermin 06. Mai 1999

4 Rechnen (10 Punkte)

Die Beispielgrammatik auf der Vorlesung ist etwas erweitert worden, damit der Taschenrechner etwas besser genutzt werden kann. Kopieren Sie sich bitte daher Expr3.om von unserem FTP-Server und ändern Sie das Programm so ab, daß
1.
die Eingabe nicht mehr als Argument erwartet wird, sondern zeilenweise von Streams.stdin gelesen wird.
2.
eine Ausgabe nur im Fehlerfall oder bei Zeilen, die mit einem ! beginnen, erfolgt.
3.
bei der zweiten Produktionsregel das Ergebnis in der entsprechenden Variable gespeichert wird, damit dieses später statt einer Konstanten verwendet werden kann.
   Start = "!" Expression .
   Start = VARIABLE "=" Expression .
   Expression = Term .
   Expression = Term "+" Expression .
   Expression = Term "-" Expression .
   Term = Factor .
   Term = Factor "*" Term .
   Term = Factor "/" Term .
   Factor = "(" Expression ")" .
   Factor = "+" Factor .
   Factor = "-" Factor .
   Factor = CONSTANT .
   Factor = VARIABLE .

VN = $\{$Start, Expression, Term, Factor $\}$.

VT = $\{$"+", "-", "*", "/", "(", ")", "!", "=", VARIABLE, CONSTANT $\}$.

S = Start.

Noch ein paar Tips:



Ingo Melzer 4/28/1999