Almetare
1.15
Alle meine Taschenrechner - Eine C++-Bibliothek zur Entwicklung von Taschenrechnern
|
Die Klasse implementiert die Anzeige des Casio fx-3600P. Mehr ...
#include <calc_fx3600p.h>
Öffentliche Methoden | |
DisplayFx3600p (ComputerBase *cbP) | |
Konstruktor des Displays. Mehr ... | |
void | setModes () |
Schaut im Computer, welche Modes gesetzt sind, und baut den Mode-String des Displays entsprechend zusammen. Mehr ... | |
![]() | |
DisplayCasioSci (ComputerBase *cbP) | |
Konstruktor der Casio-Display-Klasse. Mehr ... | |
void | resetCalcModes () |
void | setSd () |
void | setLr () |
void | setCmp () |
void | setCalcMode (CalcMode cm) |
Setzt den Modus, in dem sich der Rechner jetzt befinden soll. Mehr ... | |
void | setMode (bool on) |
string | getModesShort () |
![]() | |
DisplaySci (ComputerBase *cbP) | |
Initialisiert das Display. | |
void | resetAngModes () |
void | resetDspModes () |
void | setDeg () |
void | setRad () |
void | setGra () |
void | setSci () |
void | setFix () |
void | setNrm () |
void | setSci (bool on) |
void | setAngMode (AngMode am) |
Setzt die Winkelmodus-Strings. Mehr ... | |
void | setDspMode (DspMode dm) |
Setzt die Display-Modus-Strings. Mehr ... | |
void | setFrcMode (FrcMode fm) |
void | setDigits (int digits) |
void | setEng (int eng) |
void | setShiftNum (int shiftNum) |
void | setSxgMode (bool isOn) |
void | setForceSci (double limit) |
int | getShiftNum () const |
int | getDigits () const |
int | getEng () const |
double | getForceSci () const |
DspMode | getDspMode () const |
FrcMode | getFrcMode () const |
virtual void | setHyp (bool on) |
virtual void | makeValue () |
Wandelt den Wert in mVal in einen String, aber nur, wenn irgendwelche Aenderungen am Wert oder der Darstellung erfolgt sind. Mehr ... | |
![]() | |
DisplayBase (ComputerBase *cbP) | |
Konstruktor. Setzt den Zeiger auf den Computer und die anderen Members. | |
string | getValue () const |
string | getSeven () const |
string | getSevenRaw () const |
string | getModes () const |
Number | getVal () const |
void | setMem (bool isOn) |
void | setK (bool isOn) |
void | setCompP (ComputerBase *cP) |
void | setVal (const Number &val) |
void | setValue (const string &value) |
void | setSeven (const string &seven) |
void | makeDisplay (const Number &val) |
Setzt den Wert der Anzeige auf val und fuellt die Strings mModes, mValue und mSeven entsprechend. Mehr ... | |
void | makeDisplay () |
Wie makeDisplay(const Number& val), aber der Wert wird nicht neu gesetzt. Mehr ... | |
bool | isError () |
Prueft, ob bei einer Berechnung ein Fehler aufgetreten ist. Mehr ... | |
void | setError () |
Geschützte Attribute | |
string | mOn |
String des Power-Status "On". | |
string | mLrn |
String des Programmiermodus "LRN". | |
string | mIdx |
String des Integrations-Modus. | |
string | mEnt |
String des Enter-Modus. | |
string | mP1 |
String des Programmspeichers P1. | |
string | mP2 |
String des Programmspeichers P2. | |
![]() | |
string | mModesShort |
jeder Mode wird hier durch ein Zeichen repraesentiert | |
string | mSd |
String des Statistikmodus' "SD". | |
string | mLr |
String des Regressionsmodus' "LR". | |
string | mMode |
String des Mode-Modus'. | |
![]() | |
DspMode | mDspMode |
FrcMode | mFrcMode |
string | mInv |
string | mHyp |
string | mDeg |
string | mRad |
string | mGra |
string | mSci |
string | mFix |
bool | mIsSxgMode |
int | mDigits |
int | mShiftNum |
int | mEng |
double | mForceSci |
![]() | |
ComputerBase * | mCompP |
Zeiger auf Computer mit den Modes. | |
string | mValue |
Anzeige unformatiert. | |
string | mSeven |
Sieben-Segment-Anzeige, formatiert wie Original. | |
string | mSevenRaw |
dito, aber noch mit Spaces statt '#' und evtl. e+002 | |
string | mMem |
Memory-Anzeige. | |
string | mK |
Konstante. | |
string | mModes |
"INV MOD M K LRN ITG hyp SD LR DEG RAD GRA FIX SCI" | |
Number | mVal |
numerischer Wert der Sieben-Segment-Anzeige | |
Private Methoden | |
void | setModesCasioFx3600p () |
Schaut im Computer, welche Modes gesetzt sind, und baut den Mode-String des Displays entsprechend zusammen. Mehr ... | |
void | makeSeven (string displayStr="") |
Erzeugt Anzeige-String. Mehr ... | |
void | setOn (bool on) |
void | setInv (bool on) |
void | setLrn (bool on) |
void | setEnt (bool on) |
void | setIdx (bool on) |
void | setP1 (bool on) |
void | setP2 (bool on) |
Private Attribute | |
ComputerFx3600p * | mCompP |
Zeiger auf den Computer des Rechners. | |
Weitere Geerbte Elemente | |
![]() | |
void | setModesCasioSci () |
Schaut im Computer, welche Modes gesetzt sind, und baut den Mode-String des Displays entsprechend zusammen. Mehr ... | |
virtual int | getNumStrLen (string numStr) const |
![]() | |
void | setModesSci () |
Setzt die Modus-Strings auf die eingestellten Werte. | |
![]() | |
void | setModesBase () |
Setzt den String fuer die Rechner-Modi (DEG, SCI etc) zusammen. Mehr ... | |
Die Klasse implementiert die Anzeige des Casio fx-3600P.
DisplayFx3600p::DisplayFx3600p | ( | ComputerBase * | cbP | ) |
Konstruktor des Displays.
Setzt den Zeiger auf den Computer und initialisiert die Anzeige der Modes.
cbP | Zeiger auf den Computer, zu dem das Display gehoert |
|
privatevirtual |
Erzeugt Anzeige-String.
Erzeugt aus dem Wert in mVal bzw. dem uebergebenen String displayStr einen String, der so aussieht wie die Anzeige des Casio Fx-3600P und schreibt ihn in mSeven. Normalerweise wird versucht, die Zahl in Fixed-Notation darzustellen und zwar mit mDigits Nachkommastellen, wenn der Display-Mode FIX eingestellt ist. Grundsätzlich koennen hoechstens 10 Stellen dargestellt werden, wenn die Zahl positiv ist, wenn sie negativ ist, nur 9. Folgende Faelle koennen auftreten:
Aus den Beispielen lassen sich folgende Regeln ablesen:
displayStr | darzustellender String |
Erneute Implementation von DisplaySci.
|
virtual |
Schaut im Computer, welche Modes gesetzt sind, und baut den Mode-String des Displays entsprechend zusammen.
Erneute Implementation von DisplaySci.
|
private |
Schaut im Computer, welche Modes gesetzt sind, und baut den Mode-String des Displays entsprechend zusammen.