19#error symbols.h is only for C++!
57 explicit Symbol(
string sym =
"",
string hlp =
"no help available") :
mSym(sym),
mHlp(hlp) {}
58 string getSym()
const {
return mSym; }
59 string getHlp()
const {
return mHlp; }
61 virtual void process() = 0;
76 explicit SymNumber(
string sym =
"",
string hlp =
"any number")
92 explicit NumDmy(
string num =
"0",
string hlp =
"any number") :
SymNumber(num) { hlp = hlp; }
93 void setSym(
const string& num) {
mSym = num; }
95 static bool isFraction(
const string& sym,
double& val,
long& numr,
long& dnom);
108 explicit SymOperator(
string op =
"",
int prio = 2,
string hlp =
"no help available")
109 :
Symbol(op, hlp), mPrio(prio) {}
110 int getPrio()
const {
return mPrio; }
199 explicit SymOther(
string sym =
"",
string hlp =
"no help available")
201 static int getBraLev() {
return mBraLev; }
244 explicit SymFunction(
string sym =
"",
string hlp =
"no help available")
255 explicit SymOtherFunction(
string sym =
"",
string hlp =
"no help available")
269 Number calcVal(
const Number& a) {
return sqrt(a.getVal()); }
280 explicit SymAction(
string sym =
"",
string hlp =
"no help available")
Gesamtloeschung.
Definition: symbols.h:313
void process()
Initialisiert den Rechner, ohne die Speicher zu loeschen (Taste "AC" - all clear).
Definition: symbols.cpp:500
Loeschen der letzten Eingabe.
Definition: symbols.h:301
void process()
Ersetzt die letzte Eingabe durch 0 (Taste "C" - clear).
Definition: symbols.cpp:487
Berechnung durchfuehren.
Definition: symbols.h:324
void process()
Prozessiert das Gleichheitszeichen.
Definition: symbols.cpp:515
Anzeige und Speicher austauschen (exchange).
Definition: symbols.h:390
void process()
Austausch von Memory-Register und oberstem Wert im Zahlen-Stack.
Definition: symbols.cpp:632
Symbol fuer Ausgabe der Hilfe.
Definition: symbols.h:289
void process()
Zeigt alle Symbole auf der Konsole.
Definition: symbols.cpp:477
Rechner initialisieren.
Definition: symbols.h:401
void process()
Initialisiert die Stacks und Members des Computers.
Definition: symbols.cpp:553
Rechner initialisieren, ohne Speicher zu loeschen (init without memory).
Definition: symbols.h:412
void process()
Initialisiert die Stacks und Members des Computers, loescht aber nicht den Memory-Speicher.
Definition: symbols.cpp:565
Prozent.
Definition: symbols.h:335
void process()
Prozessiert das Prozentzeichen.
Definition: symbols.cpp:543
Speicher wieder in die Anzeige holen (recall).
Definition: symbols.h:357
void process()
Ersetzen von oberstem Wert im Zahlen-Stack durch Memory-Register, falls zuletzt Zahl eingegeben; sons...
Definition: symbols.cpp:601
Vorzeichenwechsel.
Definition: symbols.h:423
void process()
Vorzeichenwechsel.
Definition: symbols.cpp:580
Anzeige speichern (store).
Definition: symbols.h:346
void process()
Speichern im Memory-Register.
Definition: symbols.cpp:590
Im Speicher subtrahieren.
Definition: symbols.h:379
void process()
Subtrahieren von aktueller Zahl vom Memory-Register.
Definition: symbols.cpp:622
Im Speicher addieren.
Definition: symbols.h:368
void process()
Addieren von aktueller Zahl zum Memory-Register.
Definition: symbols.cpp:612
Basisklasse aller Computer.
Definition: calculator.h:85
Basisklasse aller Displays.
Definition: calculator.h:190
Wurzelfunktion.
Definition: symbols.h:266
Klasse der "normalen" Zahlen.
Definition: symbols.h:90
void process()
Eine eingegebene Zahl wird prozessiert, indem sie einfach auf den Stack gelegt wird.
Definition: symbols.cpp:130
static bool isFraction(const string &sym, double &val, long &numr, long &dnom)
Untersucht, ob der eingegebene String als Bruch interpretiert werden kann.
Definition: symbols.cpp:168
Die Klasse Number repraesentiert Zahlen.
Definition: number.h:49
Operator fuer Addition.
Definition: symbols.h:135
Operator fuer Addition.
Definition: symbols.h:123
Operator fuer Division.
Definition: symbols.h:182
Operator fuer Multiplikation.
Definition: symbols.h:169
Operator fuer Subtraktion.
Definition: symbols.h:158
Operator fuer Subtraktion.
Definition: symbols.h:146
Symbol "(" ("Bra" von Bracket).
Definition: symbols.h:209
void process()
Prozessiert Symbol "(".
Definition: symbols.cpp:400
Symbol "=".
Definition: symbols.h:231
void process()
Berechnet die letzte Operation auf dem Stack.
Definition: symbols.cpp:382
Symbol ")" ("ket" von Bracket).
Definition: symbols.h:220
void process()
Prozessiert Symbol ")".
Definition: symbols.cpp:418
Basisklasse fuer alle Aktionen ("=", "%", ...).
Definition: symbols.h:278
Basisklasse aller Funktionen.
Definition: symbols.h:242
Basisklasse fuer Zahlen.
Definition: symbols.h:74
void processCommon() const
Holt die vorherige Eingabe wieder vom Zahlenstack, wenn es kein Operator war.
Definition: symbols.cpp:112
Basisklasse fuer die Operatoren.
Definition: symbols.h:104
void processCommon()
Prozessiert einen eingegebenen Operator.
Definition: symbols.cpp:255
void processAddSub()
Prozessiert "+" und "-".
Definition: symbols.cpp:309
void processAddSubCasioSci()
Prozessiert "+" und "-".
Definition: symbols.cpp:348
Basisklasse der Nicht-Winkelfunktionen.
Definition: symbols.h:253
void process()
Prozessiert alle Nicht-Winkelfunktionen.
Definition: symbols.cpp:451
Basisklasse fuer weitere Symbole ("(", etc.)
Definition: symbols.h:195
Basisklasse fuer saemtliche Symbole.
Definition: symbols.h:47
string mSym
das Symbol als String ("+", "sto", ...)
Definition: symbols.h:49
static DisplayBase * mDsplP
Zeiger auf Display (f. wissenschftl. Rechner)
Definition: symbols.h:52
static Symbol * getLastButOneOpP()
Liefert das vorletzte eingegebene Operator-Symbol zurueck.
Definition: symbols.cpp:100
static ComputerBase * mCompP
Zeiger auf Computer mit der Symboltabelle.
Definition: symbols.h:51
static Symbol * getLastInP()
Liefert das letzte eingegebene Symbol zurueck.
Definition: symbols.cpp:68
static Symbol * getLastOpP()
Liefert das letzte eingegebene Operator-Symbol zurueck.
Definition: symbols.cpp:83
friend ostream & operator<<(ostream &os, const Symbol &s)
Ausgabeoperator fuer ein Symbol.
Definition: symbols.cpp:36
string mHlp
kurzer Hilfetext
Definition: symbols.h:50
Klasse der Zahlen (Kombination aus double und Bruechen) (Modul base)