Donnerstag, 7. Januar 2010

 

Einfacher Rechner mittels Stack - UPN-Rechner

Schreiben Sie ein Pogramm, welches einen Rechner für umgekehrt polnische Notation simuliert. Die umgekehrt polnische Notation (UPN) ist eine Postfix-Schreibweise, d.h. die Operatoren stehen immer nach den Operanden.
z.B: wird der Ausdruck 3 + 4 * 5 in UPN als 3 4 5 * + geschrieben. Diese Art von Ausdrücken ist besonders leicht zu interpretieren und zu berechnen, da man nur einen Stack benötigt.
Die Operanden werden auf den Stack gepusht. Wird ein Operator eingegeben, so werden die nötigen Operanden vom Stack gepoppt, die Operation ausgeführt und das Ergebnis wieder auf den Stack gepusht.
Folgendes Bild zeigt die Operationen für das Beispiel 3 4 5 * +:
UPN Rechner

Eingabeverarbeitung:

Ein Ausdruck soll eingegeben werden. Die Berechnung erfolgt dann nach Eingabe von Strg+D (EOF). Die einzelnen Elemente (Operanden und Opertoren) müssen mit whitespaces (Leerzeichen, Tabulatoren und Newlines) getrennt werden.

Hintergrund zu UPN:

UPN geht auf den polnischen Logiker Jan Lukasiewicz (1878-1956) zurück. UPN ist eine Schreibweise von Rechenoperationen, bei der das Verknüpfungssymbol hinter die zu verknüpfenden Operanden geschrieben wird und nicht dazwischen, wie allgemein üblich. Durch die daraus entstehende Schachtelung der Operationen ineinander, wird eine Klammersetzung unötig. Der Name Lukasiewicz ist für viele unaussprechlich, daher wird umgekehrt polnische Notation verwendet (engl. RPN reverse polish notation).

Labels: ,


Kommentare:

Kommentar veröffentlichen

Abonnieren Kommentare zum Post [Atom]





<< Startseite

This page is powered by Blogger. Isn't yours?

Abonnieren Posts [Atom]