Übungsblatt 03

Werbung
Universität
Koblenz-Landau
Übungen zur Vorlesung
Objekt-orientierte Programmierung und
Modellierung
WS 2007/2008
Institut für Informatik
Prof. Dr. Ralf Lämmel
Dr. Manfred Jackel
Übungsblatt 03
Zu bearbeiten bis 23.11.2007, 24h
Legen Sie auf Ihrem Checkout-Verzeichnis ein Unterverzeichnis blatt03 an und legen Sie dort
Ihre Lösungsdateien für diese Übungsblatt ab.
Aufgabe 1
In der Vorlesung wurde das Shapes-Problem (https://www.unikoblenz.de/~laemmel/oopm/samples/shapes.zip) vorgestellt.
Erweitern Sie die abstrakte Klasse Shape um eine abstrakte Methode public
abstract double flaeche(). Um Verwechslungen zu vermeiden, nennen
wir diese Klasse dann Shape2.
a) Implementieren Sie die Methode flaeche() in den abgeleiteten Klassen
Circle und Rectangle.
b) Leiten Sie aus Shape2 eine Klasse Shape3 ab, die das Interface
Comparable implementiert. Verglichen wird jeweils die Fläche einer Figur.
c) Schreiben Sie eine Testklasse FlaechenTest, die ein Quadrat q4 mit
Seitenlänge 4, einen Kreis c2 mit Radius 2 und einen Kreis c3 mit Radius 3
erzeugt. Geben Sie die berechneten Flächen der 3 Formen aus sowie
q4.compareTo(c2), q4.compareTo(c3), c2.compareTo(c3), c2.compareTo(q4),
c3.compareTo(c2), c3.compareTo(q4).
Abzugeben sind alle Java-Dateien.
Aufgabe 2
Ein Dreieck ist durch die Angabe der drei Seitenlängen a, b und c bis auf
Kongruenz eindeutig bestimmt. Allerdings beschreibt nicht jedes Zahlentripel
(a,b,c) ein Dreieck: Gibt es eine Seite, die länger ist als die Summe der beiden
anderen, bilden die 3 Seiten keinen geschlossenen Linienzug. Ist die Seite gleich
lang wie die Summe der beiden anderen, entartet das Dreieck zu einer Strecke.
Gleichschenklige (gleichseitige) Dreiecke haben 2 (3) gleich lange Seiten,
rechtwinklige Dreiecke lassen sich über den Satz des Pythagoras bestimmen.
Schreiben Sie eine Klasse DreiecksTest, die in der main-Methode die Längen
der 3 Seiten eines Dreiecks (als int-Werte) einliest und dann ausgibt,
a)
b)
c)
d)
ob die 3 Seiten ein geschlossenes, nicht entartetes Dreieck bilden
ob das Dreieck gleichschenklig ist
ob das Dreieck gleichseitig ist
ob das Dreieck einen rechten Winkel enthält.
Schreiben Sie das Programm so, dass nacheinander beliebig viele Dreiecke
eingegeben und getestet werden können. Das Programm soll verlassen werden,
wenn eine nicht positive Seitenlänge eingegeben wird.
Abzugeben ist der Source-Code.
Abzugeben bis Freitag, 23.11.2007, 24h in Ihr Gruppenverzeichnis auf
https://svn.uni-koblenz.de/oopm0708/students .
Herunterladen