|
| ComputerCasioSci () |
| Konstruktor fuegt die neuen Symbole zur Symboltabelle hinzu.
|
|
bool | getIsMode () const |
|
bool | getIsKinInput () const |
|
bool | getIsKoutInput () const |
|
bool | getIsXkInput () const |
|
Number | getKmem (int idx) const |
|
CalcMode | getCalcMode () const |
|
Number | getXdata () const |
|
string | getSdDat () const |
|
string | getLrDat () const |
|
void | setKmem (const int idx, const Number &num) |
|
void | setIsMode (bool isOn=false) |
|
void | setIsKinInput (bool isOn) |
|
void | setIsKoutInput (bool isOn) |
|
void | setIsXkInput (bool isOn) |
|
void | setCalcMode (CalcMode cm) |
|
void | setXdata (Number x) |
|
void | setSdDat (const string &dat) |
|
void | setLrDat (const string &dat) |
|
Number | calcA () const |
| Berechnet aus den K-Speichern den y-Achsenabschnitt A bei Regressionsrechnung. Mehr ...
|
|
Number | calcB () const |
| Berechnet Regressionskoeffizient B aus den K-Speichern. Mehr ...
|
|
Number | calcR () const |
| Berechnet Korrelationskoeffizient r aus den K-Speichern. Mehr ...
|
|
void | handleEmptyNumStack (Number &a, SymOperator *soP, Number &b) |
| Erfindet einen zweiten Operanden, falls ein Operator mit nur einem berechnet werden soll. Mehr ...
|
|
void | handleDisplayAfterBra () |
| Siehe Kommentar ComputerBase::handleDisplayAfterBra(). Mehr ...
|
|
SymOperator * | checkConstMode (SymOperator *opP) |
| Untersucht, ob in den Konstanten-Modus gewechselt werden muss oder dieser abgeschaltet werden muss. Mehr ...
|
|
void | handlePercent () |
| Prozessiert das Prozentzeichen. Mehr ...
|
|
void | popNumDepOnLastSym () |
| Siehe gleichartige Funktion in ComputerBase.
|
|
bool | popNumDepOnLastSymCasio () |
| Siehe gleichartige Funktion in ComputerBase.
|
|
void | aftProcess (string &in) |
| Fuehrt Aktionen nach Prozessierung des Symbols in aus. Mehr ...
|
|
string | makeCompCasioSciInfoStr () |
| Erzeugt fuers Debugging String mit den wichtigen Member-Variablen. Mehr ...
|
|
virtual string | makeCompInfoStr () |
|
| ComputerSci () |
| Der Konstruktor fuegt der Symboltabelle die zusaetzlichen Symbole fuer wissenschaftliche Taschenrechner hinzu. Mehr ...
|
|
bool | getIsInv () const |
|
bool | getIsHyp () const |
|
bool | getIsFixInput () const |
|
bool | getIsSciInput () const |
|
AngMode | getAngMode () const |
|
void | setIsInv (bool isOn) |
|
void | setIsHyp (bool isOn) |
|
void | setIsFixInput (bool isOn) |
|
void | setIsSciInput (bool isOn) |
|
void | setAngMode (AngMode mode=DEG) |
|
string | makeCompSciInfoStr () |
| Erzeugt String mit den wichtigen Member-Variablen. Mehr ...
|
|
virtual bool | preProcess (string &in) |
| Funktion erlaubt es, ein Symbol vor der eigentlichen Verarbeitung zu veraendern. Mehr ...
|
|
virtual bool | map (string &sym) |
|
| ComputerBase () |
| Konstruktor erzeugt Symboltabelle, initialisiert Symbol- und Nummern-Stack.
|
|
virtual | ~ComputerBase () |
| Die mit new angelegten Symbole muessen wieder geloescht werden.
|
|
void | createSymTabBase () |
| Erzeugt Symboltabelle mit allen Symbolen des "minimalen" Taschenrechners. Mehr ...
|
|
void | showSymTab () |
| Schreibt alle Symbole in die Log-Datei.
|
|
void | initStacks () |
| Initialisiert die beiden Stack-Listen. Mehr ...
|
|
void | initMembers (bool clrMem=true) |
| Initialisiert die Members von ComputerBase. Mehr ...
|
|
void | clearNum () |
|
Number | getConstVal () const |
|
Number | getPrcWhole () const |
|
Number | getMemory () const |
|
int | getBraLev () const |
|
int | getParam () const |
|
SymOperator * | getConstOpP () const |
|
SymOperator * | getLastOpP () const |
|
SymOperator * | getLastButOneOpP () const |
|
Symbol * | getLastInP () const |
|
Symbol * | getLastButOneInP () const |
|
Symbol * | getSymP (const string &sym) |
|
void | setDsplP (DisplayBase *dsplP) |
|
void | setConstVal (const Number &val) |
|
void | setPrcWhole (const Number &val) |
|
void | setMemory (const Number &val) |
|
void | setParam (const int val) |
|
void | setLastOpP (SymOperator *soP) |
| Speichert die Zeiger auf die beiden zuletzt eingegebene Operator-Symbole. Mehr ...
|
|
void | setConstOpP (SymOperator *soP) |
|
void | setLastInPisNotToSet (bool is) |
|
void | setLastInP (Symbol *sP) |
| Speichert den Zeiger auf das zuletzt eingegebene Symbol. Mehr ...
|
|
void | setIsToInit (bool in) |
|
void | pushNewStacks () |
| Wirft neue Stacks auf die Stack-Listen. Mehr ...
|
|
void | popStacks () |
| Holt die letzten Stacks von den Stack-Listen. Mehr ...
|
|
void | pushNum (const Number &n) |
|
void | pushSym (SymOperator *sP) |
|
Number | getTopButOneNum () |
|
void | setTopButOneNum (const Number &n) |
|
bool | isNumEmpty () |
|
bool | isSymEmpty () |
|
Number | popNum () |
|
Number | topNum () |
|
SymOperator * | popSym () |
|
SymOperator * | topSym () |
|
void | incBraLev () |
|
void | decBraLev () |
|
void | printSymHelp () |
| Gibt alle Symbole der Symboltabelle auf die Konsole aus.
|
|
string | getAllSyms () |
| Gibt saemtliche Symbole und Infos im String zurueck.
|
|
bool | isSym (const string &sym) |
| Prueft, ob Symbol sym in der Symboltabelle ist, und gibt true oder false zurueck. Mehr ...
|
|
Error | compute () |
| Berechnet den letzten Operator auf dem Symbol-Stack. Mehr ...
|
|
Error | swapNum () |
|
string | extractParam (string &in) |
| Extrahiert einen moeglicherweise vorhandenen Parameter des Symbols. Mehr ...
|
|
string | makeCompBaseInfoStr () |
| Erzeugt fuers Debugging String mit den wichtigen Member-Variablen. Mehr ...
|
|
virtual void | aftProcess2 (string &in) |
|
|
bool | mapCasioSci (string &sym) |
| Mapped einige Symbole auf andere Symbole um. Mehr ...
|
|
bool | mapKinKoutInputCasioSci (string &sym) |
| Fuehrt spezielles Mapping von Ziffern oder "+", "-", "*", "/" aus, falls zuvor "Kin" oder "Kout" eingegeben wurde. Mehr ...
|
|
bool | mapSci (string &sym) |
| Prueft verschiedene Shift-Ebenen und versucht, das Symbol sym entsprechend anzuupassen. Mehr ...
|
|
bool | mapInvSci (string &sym) |
| Ordnet einem Symbol dasjenige Symbol zu, das ihm im Invers-Modus entspricht. Mehr ...
|
|
bool | mapHypSci (string &sym) |
| Ordnet einem Symbol dasjenige Symbol zu, das ihm im Hyperbolicus-Modus entspricht (sin -> sinh, cos -> cosh etc.). Mehr ...
|
|
bool | mapFixSciInputSci (string &sym) |
| Macht aus einer Ziffer ein "fix"- oder "sci"-Symbol, wenn zuvor "fix" oder "sci" eingegeben wurde. Mehr ...
|
|
bool | popNumDepOnLastSymBase () |
| Holt die vorherige Eingabe vom Zahlenstack, wenn es kein Operator war. Mehr ...
|
|
Gemeinsame Basisklasse aller wissenschaftlichen Casio-Rechner.
bool ComputerCasioSci::mapKinKoutInputCasioSci |
( |
string & |
sym | ) |
|
|
protected |
Fuehrt spezielles Mapping von Ziffern oder "+", "-", "*", "/" aus, falls zuvor "Kin" oder "Kout" eingegeben wurde.
"Kin", "Kout" oder "X<->K" wurden ohne Parameter eingegeben. Die naechste Ziffer muss nun als Parameter interpretiert werden. Es gibt noch eine Sonderfunktion der Kin-Taste: Mit der Tastenkombination "Kin + 2" wird z.B. der aktuelle Anzeigewert zum Speicher 2 addiert. Der Zusammenbau des endgueltigen Symbols ist also dreistufig. Um das Konzept zu erhalten, dass ein Symbol immer nur einen numerischen Parameter erhalten kann, wird folgende Vereinbarung getroffen: Die Symbole "kin@1", "kin@2", ..., "kin@6" bedeuten: Speichern in entspr. Speicher.
"kin@431": addiere in Speicher 1
"kin@432": addiere in Speicher 2
...
"kin@436": addiere in Speicher 6 (43 ist ASCII-Wert von '+')
"kin@451": subtrahiere in Speicher 1
"kin@452": subtrahiere in Speicher 2
...
"kin@456": subtrahiere in Speicher 6 (45 ist ASCII-Wert von '-')
"kin@421": multipliziere in Speicher 1
"kin@422": multipliziere in Speicher 2
...
"kin@426": multipliziere in Speicher 6 (42 ist ASCII-Wert von '*')
"kin@471": dividiere in Speicher 1
"kin@472": dividiere in Speicher 2
...
"kin@476": dividiere in Speicher 6 (47 ist ASCII-Wert von '/')
Der Parameter wird in der process()-Funktion des Symbols Kin entsprechend ausgewertet.
- Rückgabewerte
-
sym | Ziffer oder "+", "-", "*", "/", bei Rueckkehr neues Symbol |
- Rückgabe
- true, wenn Mapping stattgefunden hat, sonst false