Ue1
Erstellen Sie eine Klasse Vektor und eine Klasse Matrix so, daß
folgendes ausführbar ist:
void main(){
Ausgaben;
Matrix m;
m.show();
Matrix 1 2
2 4
Vektor v;
v.show();
Vektor 7 8
(m*v).show();
Produkt 23 46
}
Die Vektordimension = 2 (fest) und die Matrix hat prinzipiell 2 Zeilen
und 2 Spalten.
Alle Datenelemente sind privat, wobei auch keine get- und set-Methoden
verwendet werden
sollen. Zugriffsrechte können über friend-Methoden
(keine friend-Klasse) falls notwendig vergeben werden.
Ue2
Implementieren Sie den benutzerdefinierten Datentyp der komplexen Zahlen
my_compl
mit folgenden Eigenschaften:
- Implementieren Sie die Addition (nicht +=) als freien Operator
- Implementieren Sie die Subtraktion (nicht -=) als Elementoperator
Erproben Sie die Klasse in der main-Fkt.
Seien c1,c2 komplexe Zahlen dann: (c1+c2).show() und (c1-c2).show()
sollten Ergebnis ausgeben
Ue3
Implementieren Sie den Datentyp Modulo_5 einschliesslich des PostixOperators
++(freier
Operator) und Präfix--(Elementoperator). Legen Sie Instanzen an
und überprüfen Sie die
implementierten Operatoren insbesondere im Hinblick auf die Prä-
und Postfix-Verwendung
Folgendes Beispiel zeigt das unterschiedliche Überladen von Prä-
und Postfixoperator
class A{
public:
A operator++(){cout<<"Praefix"; return A();}
A operator++(int){cout<<"Postfix";return A();}
// zur Unterscheidung wird künstlich ein Parameter int hinzugefügt
};
void main(){
A a;
++a; // Praefix Aufruf: a.operator++()
a++; // Postfix Aufruf: a.operator++(int)
}
Ue4
In main() sei int i = 1; gegeben
Schreiben Sie 2 Varianten einer Funktion change, die in main() aufgerufen
wird und diesen Wert ändert.
*/