19 #ifndef CALC_CASIO_SCI_H 20 #define CALC_CASIO_SCI_H 23 #error calc_casio_sci.h is only for C++! 32 enum CalcMode { CMP, SD, LR };
63 bool getIsMode ()
const {
return mIsMode; }
66 bool getIsXkInput ()
const {
return mIsXkInput; }
67 Number getKmem(
int idx)
const {
return mKmem[idx]; }
68 CalcMode getCalcMode ()
const {
return mCalcMode; }
70 string getSdDat ()
const {
return mSdDat; }
71 string getLrDat ()
const {
return mLrDat; }
72 void setKmem(
const int idx,
const Number& num) {
mKmem[idx] = num; }
73 void setIsMode (
bool isOn =
false) {
mIsMode = isOn; }
74 void setIsKinInput (
bool isOn) {
mIsKinInput = isOn; }
76 void setIsXkInput (
bool isOn) {
mIsXkInput = isOn; }
77 void setCalcMode(CalcMode cm) {
mCalcMode = cm; }
79 void setSdDat(
const string& dat) {
mSdDat = dat; }
80 void setLrDat(
const string& dat) {
mLrDat = dat; }
116 virtual int getNumStrLen(
string numStr)
const {
return numStr.size(); }
119 void resetCalcModes() {
mSd =
mLr =
".."; }
120 void setSd () { resetCalcModes();
mSd =
"SD"; }
121 void setLr () { resetCalcModes();
mLr =
"LR"; }
122 void setCmp() { resetCalcModes(); }
124 void setMode(
bool on) {
mMode = on ?
"m" :
".";
return; }
161 AcKin() :
SymAction(
"kin",
"store display to memory K1..K6 ('kin@2')") {}
174 AcKout() :
SymAction(
"kout",
"recall memory K1..K6 to display ('kout@2')") {}
186 AcKac() :
SymAction(
"kac",
"clear all and all memories K1..K6") {}
198 AcCmp() :
SymAction(
"cmp",
"switch off statistical and regression mode") {}
199 void process() { static_cast<ComputerCasioSci*>(
mCompP)->setCalcMode(CMP); }
211 void process() { static_cast<ComputerCasioSci*>(
mCompP)->setCalcMode(SD); }
223 void process() { static_cast<ComputerCasioSci*>(
mCompP)->setCalcMode(LR); }
234 AcXd() :
SymAction(
"xd",
"input x data in regression mode") {}
235 void process() { static_cast<ComputerCasioSci*>(
mCompP)->setXdata(
mCompP->topNum()); }
261 AcDel() :
SymAction(
"del",
"delete display from statistical data") {}
429 AcSxg() :
SymAction(
"sxg",
"conversion decimal to sexagesimal number") {}
430 void process() { (static_cast<DisplayCasioSci*>(
mDsplP))->setSxgMode(
true); }
452 AcXk() :
SymAction(
"xk",
"swap display and memory K1, K2, ... or K6 ('xk@2')") {}
463 OpRp() :
SymOperator(
"rp", 6,
"transform rectangualar to polar coordinates") {}
475 OpPr() :
SymOperator(
"pr", 6,
"transform polar to rectangualar coordinates") {}
495 #endif // !CALC_CASIO_SCI_H Durchschnitt der y-Werte.
Definition: calc_casio_sci.h:284
void process()
Delete fuer Statistik- und Regressionsmodus.
Definition: calc_casio_sci.cpp:827
void process()
Schreiben der Speicher K1 bis K6.
Definition: calc_casio_sci.cpp:631
bool mapKinKoutInputCasioSci(string &sym)
Fuehrt spezielles Mapping von Ziffern oder "+", "-", "*", "/" aus, falls zuvor "Kin" oder "Kout" eing...
Definition: calc_casio_sci.cpp:220
Konstanter Wert A bei Regression.
Definition: calc_casio_sci.h:345
void process()
Regressionskoeffizient B.
Definition: calc_casio_sci.cpp:1014
void process()
Stichproben-Standardabweichung x.
Definition: calc_casio_sci.cpp:964
bool mapModeCasioSci(string &sym)
Ordnet einem Symbol dasjenige Symbol zu, das ihm im Mode-Modus entspricht.
Definition: calc_casio_sci.cpp:319
static ComputerBase * mCompP
Zeiger auf Computer mit der Symboltabelle.
Definition: symbols.h:51
void processLr()
Prozessiert "Data" im Regressionsmodus.
Definition: calc_casio_sci.cpp:803
Enter fuer Statistik- und Regressionsmodus.
Definition: calc_casio_sci.h:243
void processSd()
Prozessiert "Data" im Statistikmodus.
Definition: calc_casio_sci.cpp:779
Uebertraegt Anzeige in den x-Daten-Zwischenspeicher.
Definition: calc_casio_sci.h:231
Zufallszahl.
Definition: calc_casio_sci.h:404
bool mIsKinInput
Kin wurde gedrueckt.
Definition: calc_casio_sci.h:51
string mLr
String des Regressionsmodus' "LR".
Definition: calc_casio_sci.h:111
CalcMode mCalcMode
Calculation-Modus CMP, SD, LR.
Definition: calc_casio_sci.h:55
Vertauscht Anzeige mit oberstem Element des Nummernstacks.
Definition: calc_casio_sci.h:437
Number calcR() const
Berechnet Korrelationskoeffizient r aus den K-Speichern.
Definition: calc_casio_sci.cpp:449
void setCalcMode(CalcMode cm)
Setzt den Modus, in dem sich der Rechner jetzt befinden soll.
Definition: calc_casio_sci.cpp:77
Delete fuer Statistik- und Regressionsmodus.
Definition: calc_casio_sci.h:257
DisplayCasioSci(ComputerBase *cbP)
Konstruktor der Casio-Display-Klasse.
Definition: calc_casio_sci.cpp:43
void addCasioSymsToSymTab()
Fuegt die Symbole der wissenschaftlichen Casio-Rechner der Symboltabelle hinzu.
Definition: calc_casio_sci.cpp:113
Gesamtloeschung und Loeschen aller Speicher K1 bis K6.
Definition: calc_casio_sci.h:183
void process()
y-Achsenabschnitt A bei Regression.
Definition: calc_casio_sci.cpp:1001
bool mIsXkInput
X<->K wurde gedrueckt.
Definition: calc_casio_sci.h:53
bool popNumDepOnLastSymCasio()
Siehe gleichartige Funktion in ComputerBase.
Definition: calc_casio_sci.cpp:560
string mSd
String des Statistikmodus' "SD".
Definition: calc_casio_sci.h:110
Rundet Wert auf Wert in Anzeige.
Definition: calc_casio_sci.h:484
string mSdDat
zuletzt im Editor eingegebene SD-Daten
Definition: calc_casio_sci.h:57
Berechnungswert y bei Regression.
Definition: calc_casio_sci.h:393
Gemeinsame Basisklasse aller wissenschaftlichen Casio-Rechner.
Definition: calc_casio_sci.h:43
void process()
Korrelationskoeffizient r.
Definition: calc_casio_sci.cpp:1027
void handlePercent()
Prozessiert das Prozentzeichen.
Definition: calc_casio_sci.cpp:490
Symbol Mode-Taste.
Definition: calc_casio_sci.h:145
Number calcVal(const Number &a)
Rundet den Wert in der Anzeige so, wie er aktuell in der Aneige erscheint.
Definition: calc_casio_sci.cpp:1163
Korrelationskoeffizient r.
Definition: calc_casio_sci.h:369
void processCommon()
Prozessiert einen eingegebenen Operator.
Definition: symbols.cpp:255
Display fuer wissenschaftliche Taschenrechner.
Definition: calc_sci.h:95
void process()
Vertauschen des obersten Nummern-Stack-Elements mit der Anzeige.
Definition: calc_casio_sci.cpp:736
Basisklasse der Nicht-Winkelfunktionen.
Definition: symbols.h:252
void process()
Loeschen aller Speicher K1 bis K6.
Definition: calc_casio_sci.cpp:693
Speicher K1 bis K6.
Definition: calc_casio_sci.h:171
string mModesShort
jeder Mode wird hier durch ein Zeichen repraesentiert
Definition: calc_casio_sci.h:109
Die Klasse Number repraesentiert Zahlen.
Definition: number.h:48
void process()
Lesen der Speicher K1 bis K6.
Definition: calc_casio_sci.cpp:669
void process()
Setzt Mode-Modus.
Definition: calc_casio_sci.cpp:617
Number mXdata
temporaerer Speicher fuer Regressionsrechnung
Definition: calc_casio_sci.h:56
void process()
Enter fuer Statistik- und Regressionsmodus.
Definition: calc_casio_sci.cpp:760
void process()
Konvertierung Sexagesimal-/Dezimalsystem.
Definition: calc_casio_sci.cpp:1094
Grundgesamtheits-Standardabweichung x.
Definition: calc_casio_sci.h:296
Basisklasse fuer die Operatoren.
Definition: symbols.h:103
static double fact(double n)
Berechnet rekursiv die Fakultaet n! der Zahl n.
Definition: util.cpp:986
Basisklasse fuer alle Aktionen ("=", "%", ...).
Definition: symbols.h:277
ComputerCasioSci()
Konstruktor fuegt die neuen Symbole zur Symboltabelle hinzu.
Definition: calc_casio_sci.cpp:98
Stichproben-Standardabweichung x.
Definition: calc_casio_sci.h:320
void process()
Berechnungswert y bei Regression.
Definition: calc_casio_sci.cpp:1058
Umwandlung Dezimal- nach Sexagesimalsystem.
Definition: calc_casio_sci.h:426
void process()
Vertauschen der Speicher K1 bis K6 mit der Anzeige.
Definition: calc_casio_sci.cpp:710
DisplayCasioSci * mDisplayCasioP
Zeiger auf das zugehoerige Display.
Definition: calc_casio_sci.h:49
Wechselt in Statistikmodus.
Definition: calc_casio_sci.h:207
Bruchdarstellung: Fliesskomma, Bruch, gemischter Bruch.
Definition: calc_sci.h:47
static DisplayBase * mDsplP
Zeiger auf Display (f. wissenschftl. Rechner)
Definition: symbols.h:52
string makeCompCasioSciInfoStr()
Erzeugt fuers Debugging String mit den wichtigen Member-Variablen.
Definition: calc_casio_sci.cpp:594
bool mIsMode
Mode-Modus.
Definition: calc_casio_sci.h:50
Berechnungswert x bei Regression.
Definition: calc_casio_sci.h:381
void process()
Durchschnitt der y-Werte.
Definition: calc_casio_sci.cpp:909
Number calcVal(const Number &a, const Number &b)
Wandelt Polarkoordinaten (r,phi) in rechtwinklige Koordinaten (a,b) um.
Definition: calc_casio_sci.cpp:1142
Number calcVal(const Number &a, const Number &b)
Wandelt rechtwinklige Koordinaten (a,b) in Polarkoordinaten (r,phi) um.
Definition: calc_casio_sci.cpp:1123
void popNumDepOnLastSym()
Siehe gleichartige Funktion in ComputerBase.
Definition: calc_casio_sci.cpp:548
void handleDisplayAfterBra()
Siehe Kommentar ComputerBase::handleDisplayAfterBra().
Definition: calc_casio_sci.cpp:359
Klassen fuer alle wissenschaftlichen Taschenrechner (Modul base).
void processSd()
Prozessiert "Delete" im Statistikmodus.
Definition: calc_casio_sci.cpp:845
Symbol Fakultaet.
Definition: calc_casio_sci.h:134
Verwandelt rechtwinklige in Polarkoordinaten.
Definition: calc_casio_sci.h:460
GrundgesamtheitsStandardabweichung y.
Definition: calc_casio_sci.h:308
Klasse der Anzeige aller wissenschaftlichen Casio-Rechner.
Definition: calc_casio_sci.h:102
void aftProcess(string &in)
Fuehrt Aktionen nach Prozessierung des Symbols in aus.
Definition: calc_casio_sci.cpp:581
Verwandelt Polar- in rechtwinklige Koordinaten.
Definition: calc_casio_sci.h:472
Vertauscht Anzeige mit Speicher K1 bis K6.
Definition: calc_casio_sci.h:449
Basisklasse aller Computer.
Definition: calculator.h:84
Number calcB() const
Berechnet Regressionskoeffizient B aus den K-Speichern.
Definition: calc_casio_sci.cpp:431
void process()
Berechnungswert x bei Regression.
Definition: calc_casio_sci.cpp:1041
void handleEmptyNumStack(Number &a, SymOperator *soP, Number &b)
Erfindet einen zweiten Operanden, falls ein Operator mit nur einem berechnet werden soll.
Definition: calc_casio_sci.cpp:344
Speicher K1 bis K6.
Definition: calc_casio_sci.h:158
bool mapInvCasioSci(string &sym)
Ordnet einem Symbol dasjenige Symbol zu, das ihm im Invers-Modus entspricht.
Definition: calc_casio_sci.cpp:277
void process()
Dreistellige Zufallszahl zwischen 0 und 1.
Definition: calc_casio_sci.cpp:1077
Eingabe von Zahlen im Sexagesimalsystem.
Definition: calc_casio_sci.h:415
Number calcA() const
Berechnet aus den K-Speichern den y-Achsenabschnitt A bei Regressionsrechnung.
Definition: calc_casio_sci.cpp:415
Regressionskoeffizient B.
Definition: calc_casio_sci.h:357
bool mapCasioSci(string &sym)
Mapped einige Symbole auf andere Symbole um.
Definition: calc_casio_sci.cpp:160
Schaltet Statistik- und Regressionsmodus ab ("Compute"-Modus).
Definition: calc_casio_sci.h:195
void processLr()
Prozessiert "Delete" im Regressionsmodus.
Definition: calc_casio_sci.cpp:869
Wechselt in Regressionsmodus.
Definition: calc_casio_sci.h:219
SymOperator * checkConstMode(SymOperator *opP)
Untersucht, ob in den Konstanten-Modus gewechselt werden muss oder dieser abgeschaltet werden muss.
Definition: calc_casio_sci.cpp:385
void process()
Grundgesamtheits-Standardabweichung y.
Definition: calc_casio_sci.cpp:946
void setModesCasioSci()
Schaut im Computer, welche Modes gesetzt sind, und baut den Mode-String des Displays entsprechend zus...
Definition: calc_casio_sci.cpp:57
void process()
Stichproben-Standardabweichung y.
Definition: calc_casio_sci.cpp:982
string mLrDat
dito LR-Daten
Definition: calc_casio_sci.h:58
Stichproben-Standardabweichung x.
Definition: calc_casio_sci.h:333
Number mKmem[6]
Konstantenspeicher K1 bis K6.
Definition: calc_casio_sci.h:54
bool mIsKoutInput
Kin wurde gedrueckt.
Definition: calc_casio_sci.h:52
Durchschnitt der x-Werte.
Definition: calc_casio_sci.h:272
void process()
Durchschnitt der x-Werte.
Definition: calc_casio_sci.cpp:893
void process()
Grundgesamtheits-Standardabweichung x.
Definition: calc_casio_sci.cpp:925
string mMode
String des Mode-Modus'.
Definition: calc_casio_sci.h:112