Dokumentation der Klassen

UML: Klassen-Diagramm zur SFehler-Klasse.

SFehler

- K : Cstring;
- Atom : CString;
- OP : CString;
- Fehler : CString;

- LeerF() : bool;
- SymbF() : bool;
- KlammerF() : bool;
- AtomF() : bool;
- OperatorF() : bool;
+ SFehler(void) : void // Konstruktor
+ setStr(CString S) : void;
+ isOK() : bool;
+ getFehlerStr() : CString;

Diese Klasse dient zur Syntax-Prüfung in der eingegebenen Formel.

Quellcode:
//FKT : CString ist die Membervariable des Editfelds mit der Bearbeitungsfolmel.

SFehler sf;
sf.setStr( FKT ); //hier wird der eingegebene String an die Klasse übergeben.
if( !sf.isOK() ) //Überprüft ob Syntax-Fehler in der Formel sind.
   MessageBox( sf.getFehlerStr() , "Syn Fehler" , MB_OK|MB_ICONERROR );
else
{//Formel zur Umwandelung bereit
                        . . .
                        . . .
} 

Methoden:
LeerF(): Überprüft, ob in das Textfeld eine Formel eingegeben wurde.
SymbF(): Überprüft, ob ein ungültiges Zeichen eingegeben wurde.
KlammerF(): Prüft die Summe der Auf- und Zuklammern, und ob die Klammern richtig gesetzt wurden.
AtomF(): Überprüft, ob nicht 2 Atome hintereinander eingegeben wurden.
OperatorF(): Überprüft, ob nicht 2 Operatoren hintereinander eingegeben wurden (außer ¬).
SFehler(): ist ein Konstruktor, initialisiert die Variablen.
setStr(): Weist die Membervariable Str der Variable K zu.
IsOK(): Enthält alle Fehlermeldungen, die beim eingeben der Formel in das Textfeld entstehen können.
getFehlerStr(): gibt die Fehlermeldung aus.

UML: Klassen-Diagramm zur CTrans-Klasse.

CTrans

- S : CString

- getTStr(CString s,int nr) : Cstring
- AtomFrage(TCHAR C) : bool
-
getVor(CString gv) : CString
-
getNach(CString gn) : CString
-
getAnzahl(CString searchStr) : int
-
SubString(CString SS,int a, int b) : CString
-
getOhneKlamern(CString SOK) : CString
-
getOhneInKammern(CString SOK): CString
- getDepth(CString S) : int
+ CTrans(void) : void //Konstruktor
+ setStr()
+ getStr()
+ getNach_GDW()
+ getNach_WD()
+ getNach_NOT()
+ getNach_MUL()

Diese Klasse dient zur Bildung einer Konjunktiven Normalform (KNF)
KNF: ist eine Konjunktion von ODER Ketten.

Quellcode:
//FKT : CString ist die Membervariable des Editfelds mit der Bearbeitungsfolmel.

CTrans ct;
CString zS[6];
            zS[0]=FKT;
            ct.setStr(FKT); // die Formel wird an das Objekt
            zS[1]=ct.getNach_GDW();
            zS[2]=ct.getNach_WD();
        ...

Methoden:
getTStr() : gibt den String S zurück
CTrans() : ist ein Konstruktor der Klasse CTrans, initialisiert die Variablen.
setStr():der Variable S wird der Inhalt des Textfeldes zugewiesen.
getStr(): Die Variable S wird zurückgegeben.
AtomFrage(): überprüft, ob ein Zeichen ein Atom ist.
getVor():gibt den Substring der Vor einem Bestimmten OP-Zeichen steht.
getNach():gibt den Substring der Nach einem Bestimmten OP-Zeichen steht.
getAnzahl(): gibt die Anzahl der eingegebenen des Teilstrings aus.
SubString(): gibt einen Teilstring zurück.
getOhneKlammern() : einfacher Algorithmus zur Klammerentfernung
getOhneInKlammern() : komplexer Algorithmus zur internen Klammerentfernung
getNach_GDW(): löst die genau dann, wenn Verknüpfungen auf.
getNach_WD(): löst die wenn dann Verknüpfungen auf.
getNach_NOT(): Die NON-Zeichen werden nach innen verschoben und aufgelöst.
getDepth(); gibt die Klammerungstiefe an.
getNach_MUL(): //Auf diesen Algorithmus sind wir nicht drauf gekommen.