Postfixrechner

 

Diese Aufgabe baut auf der Lösung einer Aufgabe auf, die unter der Rubrik "Stapel-Anwendungen" zu finden ist. Dort wird vorgeschlagen, eine Funktion calcPE zu schreiben, welche einen Postfix-Ausdruck auswertet und sich hierfür eines Stapels bedient.

 

Wir wollen nun voraussetzen, dass Sie diese Funktion geschrieben und getestet haben. Sie wird den Kern der aktuellen Aufgabe darstellen, nämlich eine Anwendung zu schreiben, die einen Postfix-Taschenrechner simuliert. Wie ein solcher Rechner ausehen könnte, zeigt das folgende Bild:

 

 

Wie Sie sehen, hat der Benutzer gerade einen Ausdruck eingetippt. Zur Trennung der einzelnen Formelbestandteile dienen wegen der besseren Lesbarkeit hier nicht Leerzeichen, sondern Unterstriche. Der eingegebene Ausdruck 25 13 * 9 - entspricht dem Infix-Ausdruck 25 * 13 - 9. Drückt der Benutzer nun auf die Taste =, so wird in der Ausgabezeile das Ergebnis 316 angezeigt.

 

Die meisten der Tasten sind selbsterklärend. Die dritte Taste von links in der untersten Reihe ist der Unterstrich, der als Trennzeichen fungiert. Die Taste < nimmt jeweils das letzte Zeichen der Eingabe weg.

 

Wichtig: realisieren Sie den Rechner mit einer Schichtenarchitektur.