faecher:informatik:oberstufe:adt:karteikarten:start

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.

Link zu der Vergleichsansicht

Beide Seiten, vorherige Überarbeitung Vorherige Überarbeitung
Nächste Überarbeitung
Vorherige Überarbeitung
faecher:informatik:oberstufe:adt:karteikarten:start [03.11.2021 19:32] sbelfaecher:informatik:oberstufe:adt:karteikarten:start [03.11.2021 19:45] (aktuell) sbel
Zeile 40: Zeile 40:
  
  
 +Er wendet das oben beschriebenen System an und hat gerade mit dem zweiten Fach begonnen.
  
 +Stelle den Verlauf der Fächerbelegung mit den Fragen 1 bis 3 dar, wenn Hans die nächsten Fragen 
 +
 +''richtig'', ''richtig'', ''falsch'', ''falsch'', ''richtig'', ''falsch''
 +
 +beantwortet.
 +
 +
 +{{:aufgabe.png?nolink  |}}
 +=== (A2)  ===
 +
 +Für die Implementation soll der ADT "Schlange" verwendet werden. Als Grundlage dienst das folgende Implementationsdiagramm:
 +
 +{{ :faecher:informatik:oberstufe:adt:karteikarten:auswahl_088.png |}}
 +
 +  * Beschreibe die wesentlichen Eigenschaften des abstrakten Datentyps ''Schlange''.
 +  * Erläutere, welche Methoden benutzt werden müssen, um in obigem Modell eine Karte aus einem Fach heraus zu nehmen und in ein anderes Fach zu legen.
 +  * Die Methoden ''getAnzahl(): int'' der Klasse ''Fach'' soll die Anzahl der in diesem Fach enthaltenen Karten zurückliefern. Implementierediese Methode auf Basis der gegebenen Klasse ''LinkedList''. Du darfst davon ausgehen, dass alle Methoden der Klasse ''LinkedList'' bereits korrekt implementiert sind.
 +
 +{{:aufgabe.png?nolink  |}}
 +=== (A3)  ===
 +
 +Alternativ zur Auswahl der Schlange könnte man zur Modellierung eines Fachs auch
 +den abstrakten Datentyp Stapel verwenden..
 +
 +  * Erläutere die Eigenschaften eines ''Stapels''.
 +  * Entwerfe einen Algorithmus, mit dem auch bei einem Stapel (unter Verwendung eines Hilfsstapels) eine Karte hinter den schon in einem Fach vorhandenen Karteikarten eingefügt werden könnte. Notiere den Algorithmus in Pseudocode verständlich, eine Implementation in Java ist nicht gefordert.
 +
 +{{:aufgabe.png?nolink  |}}
 +=== (A4)  ===
 +
 +In der Klasse ''Lernbox'' gibt es ein Attribut ''faecher'', das die fünf Fächer der Lernbox
 +speichert. Der Konstruktor der Klasse initialisiert dieses Attribut.
 +
 +Begründe, warum weder Schlange noch Stapel als Datentyp für das Attribut ''faecher'' geeignet sind.
 +
 +Deklariere das Attribut ''faecher'' mit einem geeigneten Datentyp.
 +
 +Implementiere den Konstruktor der Klasse ''Lernbox''.
 +
 +{{:aufgabe.png?nolink  |}}
 +=== (A5)  ===
 +
 +Die Methode ''stelleFrage(k: Karteikarte): boolean'' bewirkt, dass dem
 +Nutzer der App die Frage angezeigt und seine Antwort kontrolliert wird. Wurde die
 +Frage korrekt beantwortet, wird ''true'' zurückgegeben, sonst ''false''.
 +
 +Implementiere unter Verwendung der Methode ''stelleFrage(k: Karteikarte): boolean'' die Methode
 +''kartenAusDemFachAbarbeiten(nr: int)'', die alle Karten des angegebenen
 +Fachs durchgeht, bis das Fach geleert ist. 
 +
 +Richtig beantwortete Fragen werden ins nächste, falsch beantwortete Fragen ins erste Fach befördert.
 +
 +Du musst keine Fehlerbehandlung für unzulässige Werte des Parameters ''nr'' implementieren, es wird auf jeden Fall ein gültiges Fach angegeben.
  • faecher/informatik/oberstufe/adt/karteikarten/start.1635967973.txt.gz
  • Zuletzt geändert: 03.11.2021 19:32
  • von sbel