UPN-Taschenrechner
UPN steht für umgekehrte Polnische Notation, setzt man diese Notation
ein um Rechnungen durchzuführen benötigt man keine Klammern und
muss sich auch keine Gedanken über Vorrangregeln machen.
Beispiele:
Gewohnte Infix Notation
|
UPN (Postfix) Notation
|
(2 + 3) * 5
|
2 3 + 5 *
|
1 + 2 + 3
|
1 2 + 3 + oder 1 2 3 + +
|
sqrt(25)
|
25 sqrt
|
Aufgabe:
Um das Ergebnis möglichst flexibel nutzen zu können soll eine
Bibliothek entwickelt werden, welche die Funktionalität enthält.
Zur Nutzung soll ein Frontend für die Kommandozeile und eventuell
eine graphische Oberfläche entwickelt werden.
Funktionalität:
-
Grundrechenarten, Wurzel, Trigonometrie, Logarithmus, ...
-
Definieren symbolischer Funktionen (z.B.: "x = a + b * 2" => "2 3 x = 8")
-
Ergebnisverfolgung in Postfix/Infix (wie ist ein Ergebnis entstanden
z.B.: Eingabe: "1 2 3 + +" => Ergebnis: "6" => Weg: "1 + 2 + 3")
Hinweise: Das Projekt soll in einzelnen Stufen bearbeitet werden:
- Die Problemanalyse soll mit einem kurzen Pflichtenheft (2-4 Seiten) abgeschlossen werden.
- An die Analyse soll sich die Implementierung anschließen.
- Als Abschluss des Bakkalaureatsprojekts ist ein schriftlicher Bericht von 30-40
Seiten abzugeben, der zumindest die folgenden Kapitel enthalten soll: Beschreibung der
Aufgabe und ihres Umfeldes (d.h. wichtige Begriffe, bestehende Lösungen, etc.),
Benutzerdokumentation, Implementierungsbeschreibung, Kritische Beurteilung und Ausblick.
Betreuung: Nach der intensiveren Anfangsphase (kurze Besprechungen im Wochenabstand), die zur Absteckung des Problemfeldes und zur Klärung von Problemen dient, sollen im Zweiwochen-Rhythmus kurze Besprechungen stattfinden, um einen zügigen Fortgang des Projekts zu gewährleisten.
Programmiersprache: C# oder Java
Betreuer: Dipl.-Ing. Markus Löberbauer
|