From 33613a85afc4b1481367fbe92a17ee59c240250b Mon Sep 17 00:00:00 2001 From: Sven Eisenhauer Date: Fri, 10 Nov 2023 15:11:48 +0100 Subject: add new repo --- Bachelor/Prog2/Z-Uebung/Z-Uebung.htm | 330 +++++++++++++++++++++++++++++++++++ 1 file changed, 330 insertions(+) create mode 100644 Bachelor/Prog2/Z-Uebung/Z-Uebung.htm (limited to 'Bachelor/Prog2/Z-Uebung/Z-Uebung.htm') diff --git a/Bachelor/Prog2/Z-Uebung/Z-Uebung.htm b/Bachelor/Prog2/Z-Uebung/Z-Uebung.htm new file mode 100644 index 0000000..0790d88 --- /dev/null +++ b/Bachelor/Prog2/Z-Uebung/Z-Uebung.htm @@ -0,0 +1,330 @@ + + + + + + + Klausur SS 04 + + +  + + + + + + + + +
FH Darmstadt  +
FB Informatik +

Prof.Dr.H.P.Weber

+

+

Programmieren II
+
+
Übung
+
+
+

    Juni 2005

+
+
+ +
+ + + + + +
Es soll die folgende Klassenhierarchie für zweidimensionale Figuren +implementiert werden:
+ Abstrakte Basisklasse Shape, davon direkt abgeleitet die + Klassen +Polyline und Ellipse. Von +Polyline direkt abgeleitet die Klassen Line + und Polygon und zusätzlich von Polygon + abgeleitet die Klasse Rectangle. Außerdem von Ellipse + abgeleitet die Klasse Circle.
+ +
+ + + + + +
Teil 1:
+ +

Zunächst werden nur die grundlegenden Klassen Shape und +Polyline entwickelt und getestet. Da die Klassen der Shape-Hierarchie +mit Punkten arbeiten, wird zur Darstellung eines Punktes auch eine Klasse +Point definiert:

+ + + + + + +
Teil 2:
+ +

Ergänzen Sie die Shape-Klassenhierarchie um die noch +fehlenden Klassen Line, Polygon, Rectangle, +Ellipse und Circle:

+ + + + + + + +
Teil 3:
+ +

Die Figuren eines 'Bildes' bestehend aus Objekten der Shape-Hierarchie +werden in einer verketteten Liste verwaltet und in der Reihenfolge 'gezeichnet', +wie sie in der Liste vorkommen. Dazu soll std::list aus der STL +verwendet werden:

+ + + + + + + +
Teil 4:
+ +

Die Klasse ShapePtrList wird noch in zwei Schritten +verbessert:

+ + +Testen Sie die verbesserte Klasse + ShapePtrList. Ändern Sie die  main-Funktion +aus Teil 3 wie folgt: Entfernen Sie die globale Funktion printShapeList +und verwenden Sie zur Ausgabe der Liste die Methode toString. +Erzeugen Sie eine Kopie der Liste und modifizieren Sie die Figuren der neuen +Liste durch einen Aufruf der Methode scale. Nur die Figuren der +neuen Liste dürfen sich dadurch verändern. Testen Sie auch die Zuweisung +ganzer Listen. Den Aufruf der Destruktoren können Sie sichtbar  machen, +indem Sie im virtuellen Destruktor der Klasse Shape eine +Meldung ausgeben. +
+ + + + + +
+
+Quelle: Prinz / Kirch-Prinz: C++ Das Übungsbuch +
+
+ + \ No newline at end of file -- cgit v1.2.3