Diese Anwendung bildet einen technisch/wissenschaftlichen Taschenrechner nach. Der größte Unterschied zu einem normalen Taschenrechner besteht darin, dass reale Werte nicht nur als Zahl, sondern zusammen mit einer Einheit eingegeben werden. Dadurch sind Rechnungen wie beispielsweise "2 Meter + 3 Sekunden" ausgeschlossen und führen zu einer Fehlermeldung. Dabei ist die Eingabe einer Einheit optional, so dass der Rechner auch wie gewohnt ohne Einheit (dimensionslos) benutzt werden kann. Zudem werden die durchgeführten Rechnungen in einem Protokoll aufgezeichnet und können somit jederzeit wieder nachvollzogen werden. Beim Rechnen wird die Regel "Punkt- vor Strichrechnung" beachtet.
| Menüpunkt | Beschreibung |
|---|---|
| Prozentrechnung | - |
| Zahlenformat | - |
Der Rechner beinhaltet zur einfacheren Handhabung zwei mögliche Rechenarten für die Prozentrechnung. Im folgenden werden die Unterschiede an einem Beispiel verdeutlicht, wobei die Rechnung "Addiere 15% auf 20" durchgeführt werden soll. Je nach Rechenart ist die nachstehende Folge in den Rechner einzugeben, um das gewünschte Ergebnis zu erlangen.
Das Format der Zahlen bezieht sich nur auf die Anzeige der Werte im Protokoll, nicht auf das Eingabefeld. Über die Menü-Zeile können folgende Eigenschaften manipuliert werden:
Über diesen Menü-Punkt aktivieren bzw. deaktivieren sie den aktuellen Trenner für
Tausenderstellen einer Zahl. Der Trenner und die Schrittweite sind dabei durch die
eingestellten Ortsdaten bestimmt. Üblicherweise wird ein "." oder ","
als Trenner benutzt und die Schrittweite beträgt im Normalfall "3". Bei
Aktivierung des Trenners mit Auswahl von "ja" wird beispielsweise die Zahl
"1234,56" als "1.234,56" angezeigt. Bei Deaktivierung mit
"nein" bleibt die Zahl unverändert.
Standardmäßig wird der Tausendertrenner aktiviert.
Über diesen Menü-Punkt wird die Anzahl an Nachkommastellen, mit der die Zahlen im
Protokoll angezeigt werden sollen, festgelegt. Diese variiert von
"genau", d.h. Anzeigen aller Nachkommastellen, über "3" und
"2" bis hin zu "keiner" Nachkommastelle.
Standardmäßig werden die Zahlen mit allen Nachkommastellen angezeigt.
Über diesen Menü-Punkt wird die Anzahl an Nachkommastellen, auf die ein Ergebnis
gerundet werden soll, festgelegt. Bei Auswahl von "keine" wird gar nicht
gerundet, ansonsten auf die entsprechende Nachkommazahl.
Standardmäßig wird keine Rundung durchgeführt.
Der Rechner stellt neben den vier Grundrechenarten noch einige Operatoren zur Verfügung, die nur einen Operanden zur Ergebnisberechnung benötigen, der aus dem Eingabefeld geholt wird. Das Ergebnis wird dabei nur in das Eingabefeld zurückgestellt. Folgende Operatoren werden bereitgestellt:
| Operation | Funktion |
|---|---|
| 1/x | Kehrwertbildung: Diese Taste bildet den Kehrwert zu der Zahl im Eingabefeld. |
| % | Prozentrechnung: Mit dieser Taste wird die Zahl im Eingabefeld als Prozentwert aufgefasst. Je nach eingestellter Prozentrechenart und zuletzt eingegebenen Operator bezieht sich der aktuelle Wert entweder als Prozentangabe auf den zuvor eingegeben Wert (oder das letzte Ergebnis) oder wird durch 100 geteilt. Wird der Wert als eine auf den letzten Wert bezogene Prozentangabe aufgefasst, so spielt die aktuell eingestellte Einheit keine Rolle mehr, da die Einheit durch den Bezugswert festgelegt ist. |
| x² | Quadrieren |
| x³ | Potenzieren |
| x! | Fakultät |
| Pi | Ausgabe der Zahl Pi |
| Sin | Sinus berechnen |
| Cos | Cosinus berechnen |
Um die Eingabe von Zahlen zu vereinfachen und nicht jede Zahl mit Hilfe der
entsprechenden Tastendrücke "zusammensetzen" zu müssen, ist eine direkte
Eingabe von Zahlen im Display des Taschenrechners möglich. Dazu wird dieses Feld mit der
Maus angeklickt, worauf nun eine beliebige Zahl eingegeben werden kann.
Des weiteren können auch längere Rechnungen vereinfacht eingegeben werden. Soll
beispielsweise "2 x 3 x 7" berechnet werden, so wird zunächst "2"
direkt in das Eingabefeld eingegeben, dann die Operation "x" gedrückt und dann
wieder auf das Eingabefeld gewechselt. Nun werden dort die Zahlen "3" und
"7" jeweils von einem <RETURN> gefolgt eingegeben, wobei nach dem
<RETURN> direkt das Ergebnis berechnet wird.
Jegliche Funktionalität, die zur Erstellung eines Taschenrechners benötigt wird, ist
in den Klassen CX_NUMERIC und CX_VALUE bereits vorhanden. Wenn diese
Anwendung nun doch verhältnismäßig groß erscheint, so liegt dieses daran, dass
versucht wurde, den Rechner so komfortabel wie möglich zu gestalten.
Die "reinen" Rechenoperationen, wie die Grundrechenarten oder z.B. die
Kehrwertbildung, sind alle über die oben genannten Objekte verfügbar. Bei Objekten der
Klasse CX_VALUE wird zudem überprüft, ob die Rechenoperation überhaupt
ausgeführt werden darf ( z.B. ist "2 m" + "4 sec" eine unerlaubte
Rechnung).
Der Hauptteil der Anwendung beschäftigt sich hingegen mit der grafischen Anzeige des
Rechners und der Umsetzung spezieller Rechenarten (z.B. "Punkt- vor
Strich-Rechnung", "Prozentrechnung" oder auch
"Fakultätsberechnung"). An dieser Anwendung wird sehr gut ersichtlich,
dass Basis-Funktionalität, d.h. der "allgemeingültige Fall", in den Modellklassen
steckt, während spezielle Anforderungen, wie z.B. "Punkt- vor Strich-Rechnung"
mit InstantView® umgesetzt werden.
calcula.mod
Neben der Beschränkung der Zugriffsrechte über die Klasse und deren Datenfelder kann das Modul über einige der empfangenen Messages in seiner Nutzung beschränkt werden.
| Message | Parameter | Funktion | Security |
|---|---|---|---|
| SHOW_UNIT_CALCULATOR | keine | Einheitenrechner anzeigen |
keine