BERGISCHE UNIVERSIT ¨AT GESAMTHOCHSCHULE WUPPERTAL
GAUSS-STRASSE 20 42097 WUPPERTAL (Korrespondenzanschrift) 42119 WUPPERTAL (Lieferanschrift) TELEX 8 592 262 bughw TELEFAX (0202) 439-2901 TELEFON (0202) 439-1
Fachbereich 7
MATHEMATIK
Prof. Dr. Hans-J ¨urgen Buhl Praktische Informatik / Numerik
e-mail: Juergen.Buhl@math.uni-wuppertal.de
Programming by Contract
WS 2003/2004 – ¨ Ubungsblatt 7 8. Januar 2004
Ausgabe: 15. Dezember 2003
Aufgabe 1. Ausnahmebedingungen
Konzipieren Sie gem¨aß Seite 38 der Materialsammlung eine eigene Ex- ceptionhierarchie unter der Ahnenklasse exception und benutzen Sie diese Exceptions in geeigneten Methoden der Klasse Day von ¨Ubungs- blatt 3, der Funktion long fakultaet()von ¨Ubungsblatt 4 sowie der Funktion long ackermann(long, long).
Schreiben Sie Benutzeranleitungen f¨ur diese Implementierungen, die den Benutzer genau einweist, wie Ihre Exceptionhierarchie aussieht und wie sie zum Abfangen von Exceptions verwendet werden kann.
Aufgabe 2. Spezifikation von Exceptions
Spezifizieren Sie die Funkionen von Aufgabe 1 mit VDM-errs-Klauseln gem¨aß Kapitel 4.2 der Materialsammlung.
Aufgabe 3. Module in VDM
Erstellen Sie nach dem Muster von Kapitel 4.3 eine vollst¨andige VDM- Spezifikation des Moduls Queue von Seite 13 der Materialsammlung.
Vergessen Sie n¨otige errs-Klauseln nicht. Welche zus¨atzlichen Metho- den sind f¨ur eine KlasseQueue sinnvoll?
Aufgabe 4. nana
Testen Sie das nana-Paket auf dem IT-Cluster des Fachbereichs. Mo- difizieren Sie eigene lokale Kopien der nicht funktionierenden nana- Skripten gem¨aß den Hinweisen der Vorlesung und testen Sie erneut.
1