faecher:informatik:oberstufe:modellierung:2019a:start

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.

Link zu der Vergleichsansicht

Nächste Überarbeitung
Vorherige Überarbeitung
Nächste ÜberarbeitungBeide Seiten, nächste Überarbeitung
faecher:informatik:oberstufe:modellierung:2019a:start [16.12.2021 08:35] – angelegt sbelfaecher:informatik:oberstufe:modellierung:2019a:start [16.12.2021 08:50] – [Teil 2] sbel
Zeile 1: Zeile 1:
 ====== Whalewatching Events ====== ====== Whalewatching Events ======
  
 +((Abituraufgabe 2019 in BW, Teil A)) ((Photo by [[https://unsplash.com/@sagredophotography?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText|Richard Sagredo]] on [[https://unsplash.com/s/photos/whale?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText|Unsplash]]))
 +  
 +
 +
 +{{ :faecher:informatik:oberstufe:modellierung:2019a:whale.jpg?400|}}
  
 Eine Eventfirma, die Whalewatching betreibt, möchte ihre Touren mit einer neuen Software Eine Eventfirma, die Whalewatching betreibt, möchte ihre Touren mit einer neuen Software
Zeile 25: Zeile 30:
 Gruppe fünf oder weniger Tiere umfasst. Gruppe fünf oder weniger Tiere umfasst.
  
-Bei der Umsetzung der Software wird eine Klasse Tour eingeführt, die die beobachteten+Bei der Umsetzung der Software wird eine Klasse ''Tour'' eingeführt, die die beobachteten
 Sichtungen speichert. Darüber hinaus wird es unter anderem für jede beobachtbare Tierart Sichtungen speichert. Darüber hinaus wird es unter anderem für jede beobachtbare Tierart
 eine eigene Klasse geben. eine eigene Klasse geben.
 +
 +{{ :faecher:informatik:oberstufe:modellierung:2019a:waleuml.png?500 |}}
 +
 +
 +===== Teil 1 =====
 +
 +{{:aufgabe.png?nolink  |}}
 +=== (T1A1) ===
 +Stellen Sie die Beziehungen zwischen den Klassen ''Bartenwal'', ''Buckelwal'',
 +Delfin, Fleckendelfin, ''Grauwal'', ''Tier'', ''Tour'' und ''Tuemmler'' in einem Klassendiagramm dar. Die Klassen sollen nur den Klassennamen, keine Attribute und Methoden enthalten. Gib außerdem an, ob bzw. welche Klassen abstrakt sind
 +und begründe deine Entscheidung.
 +
 +  * Gib an, in welchen Klassen die Attribute ''alter'', ''spitzname'' und ''gruppengroesse'' deklariert werden müssen. Begründe deine Entscheidung.
 +  * Implementiere einen Konstruktor für die Klasse ''Delfin'' und einen Konstruktor für
 +die Klasse ''Tuemmler''. Dem Konstruktor der Klasse ''Tuemmler'' darf nur die Gruppengröße übergeben werden, weil Tümmler grundsätzlich nicht geschützt sind und immer 1EUR pro gesichtetes Tier kosten.
 +
 +===== Teil 2 =====
 +
 +
 +Wenn ein Boot sich einem oder mehreren Tieren nähert, wird die Methode
 +''beobachten'' der Klasse ''Tour'' aufgerufen. Diese prüft, ob das Boot sich weiter den
 +Tieren nähern darf. Dazu ruft sie die Methode ''darfBeobachtetWerden()'' des
 +gesichteten Tieres auf. Wenn die Annäherung erlaubt ist, trägt die Methode
 +beobachten das Tier in das Array ''sichtungen'' ein; dieses Array bietet dabei immer
 +genügend Platz. Die Methode gibt zurück, ob die Beobachtung erlaubt ist.
 +
 +---- 
 +{{:aufgabe.png?nolink  |}}
 +=== (T2A1) ===
 +
 +  * Erläutere, warum der Methode ''beobachten(t: Tier): boolean'' der Klasse Tour sowohl Grauwal- als auch Tuemmler-Objekte übergeben werden können.
 +  * Implementiere die Methode ''beobachten(t: Tier): boolean'' der Klasse Tour.
 +
 +Die Methode ''darfBeobachtetWerden(): boolean'' gibt in der Klasse Tier
 +immer ''true'' zurück. Da Fleckendelfine aus Artenschutzgründen nicht immer beobachtet werden dürfen, muss die Methode entweder in der Klasse Delfin oder in der Klasse Fleckendelfin überschrieben werden.
 +
  • faecher/informatik/oberstufe/modellierung/2019a/start.txt
  • Zuletzt geändert: 16.12.2021 08:56
  • von sbel