# Hausaufgabe gegen Bezahlung



## Karsten3030 (19. Jan 2018)

Hallo zusammen,
ich habs verplant dass ich für meinen Progkurs noch eine Aufgabe abgeben muss. Bin durch die anstehende Prüfungsphase ziemlich im Stress und habe einfach keine Zeit noch die Aufgabe zu machen. Für jemanden der mehr Ahnung und Übung hat als ich denke ich brauchts nicht so lang und ich habe auch kein Problem damit dafür was zu blechen wenns mir mehr Zeit gibt Mathe und Bio zu lernen.

Hab die Aufgabe mal in einen Spoiler gesetzt. Brauche die Aufgabe bis Sonntag, wer Interesse hat sagt mir bitte Bescheid wie viel Ihr dafür haben wollt. Würde euch dann per Paypal was zahlen oder auch mit nem Amazon-/Netflix-/Irgendwas- Gutschein, wie ihr wollt 


Spoiler: Aufgabe



a)
Definieren Sie eine Klasse Datum, die eine Datumsangabe mit Tag, Monat und
Jahr realisiert. Die Klasse hat folgende öffentliche Komponenten:

public Datum(int tag,int monat,int jahr)
Konstruktor, der ein Datum mit den angegebenen Werten erzeugt.

public String toString()
Wandelt das Datum in eine Zeichenkette um. Der Monatsname soll dabei
ausgeschrieben werden, z.B. in der Form "16. Juni 2004".

public boolean jährtSichHeute()
Die Methode liefert true, falls sich das Datum heute jährt, d.h. Tag und
Monat des Datums mit Tag und Monat des aktuellen Datums
übereinstimmen. Das aktuelle Datum können Sie in Java folgendermaßen
bestimmen:
java.util.Calendar cal = new java.util.GregorianCalendar();
int jahr = cal.get(java.util.Calendar.YEAR);
int monat = 1 + cal.get(java.util.Calendar.MONTH);
int tag = cal.get(java.util.Calendar.DAY_OF_MONTH);

b)
Definieren Sie eine Klasse Person, die die Daten einer Person beschreibt – und
zwar Name, Geburtsdatum und Geschlecht. Die Klasse soll folgende öffentliche
Komponenten besitzen:

public Person(String name, Datum geburtstag,boolean istWeiblich))
Konstruktor, der ein Personen-Objekt mit den angegebenen Daten erzeugt.

public String toString()
Wandelt Personendaten in einen String um, z.B. in der Form "Herr Meier,
geb. am 16. Juni 1982" bzw. "Frau Müller, geb. am 22. April 1984"

public boolean hatHeuteGeburtstag()
Liefert true, falls die Person am aktuellen Tag Geburtstag hat (d.h. das
Geburtsdatum jährt sich am aktuellen Tag).

c)
Implementieren Sie eine Klasse Geburtstagskalender, die ein Feld von Personen
verwaltet. Die Anzahl der Personen, die der Geburtstagskalender maximal
speichern kann, soll beim Erzeugen eines Geburtstagskalender-Objekts
angegeben werden können.
Anmerkung: Die Daten sollen nicht permanent in einer Datei gespeichert,
sondern nur im Hauptspeicher gehalten werden!.
Die Klasse soll folgende öffentliche Komponenten haben:

public Geburtstagskalender(int maxAnzahl)
Konstruktor, der einen Geburtstagskalender erzeugt, der maxAnzahl viele
Personen speichern kann.

public void eintragen(Person person)
Trägt die angegebene Person in den Kalender ein. Es wird nicht geprüft, ob
die Person bereits eingetragen ist. Ist im Kalender kein Platz mehr, soll eine
Fehlermeldung ausgegeben werden.

public void alleAusgeben()
Gibt alle eingetragenen Personen aus (mit System.out.println()).

public void geburtstagskinderAusgeben()
Gibt alle Personen aus, die gerade Geburtstag haben.


----------

