|
Öffentliche Methoden |
| | 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.
|
| Number | calcB () const |
| | Berechnet Regressionskoeffizient B aus den K-Speichern.
|
| Number | calcR () const |
| | Berechnet Korrelationskoeffizient r aus den K-Speichern.
|
| void | handleEmptyNumStack (Number &a, SymOperator *soP, Number &b) |
| | Erfindet einen zweiten Operanden, falls ein Operator mit nur einem berechnet werden soll.
|
| void | handleDisplayAfterBra () |
| | Siehe Kommentar ComputerBase::handleDisplayAfterBra().
|
| SymOperator * | checkConstMode (SymOperator *opP) |
| | Untersucht, ob in den Konstanten-Modus gewechselt werden muss oder dieser abgeschaltet werden muss.
|
| void | handlePercent () |
| | Prozessiert das Prozentzeichen.
|
| 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.
|
| string | makeCompCasioSciInfoStr () |
| | Erzeugt fuers Debugging String mit den wichtigen Member-Variablen.
|
| virtual string | makeCompInfoStr () |
Geschützte Methoden |
| bool | mapCasioSci (string &sym) |
| | Mapped einige Symbole auf andere Symbole um.
|
| bool | mapKinKoutInputCasioSci (string &sym) |
| | Fuehrt spezielles Mapping von Ziffern oder "+", "-", "*", "/" aus, falls zuvor "Kin" oder "Kout" eingegeben wurde.
|
Geschützte Attribute |
| DisplayCasioSci * | mDisplayCasioP |
| | Zeiger auf das zugehoerige Display.
|
| bool | mIsMode |
| | Mode-Modus.
|
| bool | mIsKinInput |
| | Kin wurde gedrueckt.
|
| bool | mIsKoutInput |
| | Kin wurde gedrueckt.
|
| bool | mIsXkInput |
| | X<->K wurde gedrueckt.
|
| Number | mKmem [6] |
| | Konstantenspeicher K1 bis K6.
|
| CalcMode | mCalcMode |
| | Calculation-Modus CMP, SD, LR.
|
| Number | mXdata |
| | temporaerer Speicher fuer Regressionsrechnung
|
| string | mSdDat |
| | zuletzt im Editor eingegebene SD-Daten
|
| string | mLrDat |
| | dito LR-Daten
|
Private Methoden |
| void | addCasioSymsToSymTab () |
| | Fuegt die Symbole der wissenschaftlichen Casio-Rechner der Symboltabelle hinzu.
|
| bool | mapInvCasioSci (string &sym) |
| | Ordnet einem Symbol dasjenige Symbol zu, das ihm im Invers-Modus entspricht.
|
| bool | mapModeCasioSci (string &sym) |
| | Ordnet einem Symbol dasjenige Symbol zu, das ihm im Mode-Modus entspricht.
|
Freundbeziehungen |
| ostream & | operator<< (ostream &os, ComputerCasioSci &c) |
|
|
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
|