Übungsorganisation
Ab 15.04.2008 (dritte Vorlesungswoche) finden wöchentlich Poolraumbetreuungen statt (die Termine finden Sie auf der Seite Organisation). Die Übungen werden immer vor dem zugehörigen Betreuungstermin veröffentlicht. Sie sollen die Übungen möglichst selbständig bzw. unter Zuhilfenahme des Skripts bearbeiten (der Poolraum steht Ihnen dazu natürlich auch außerhalb der Betreuungstermine offen), bei auftretenden Fragen wenden Sie sich dann an Ihren Tutor.Für die Poolraumbetreuung müssen Sie sich anmelden. Sie geben bis zu drei Wunschtermine an, sowie bis zu zwei Termine, an denen Sie absolut keine Zeit haben (Sie müssen allerdings Gründe dafür angeben) und werden dann einem Betreuungstermin fest zugeteilt. Sie können bei der Anmeldung auch eine weitere Matrikelnummer angeben, wenn Sie während der Poolraumbetreuung gerne mit einer/einem Bekannten zusammen arbeiten. Dieser Student wird dadurch automatisch mit angemeldet und derselben Gruppe zugeteilt.
Sie benötigen für die Anmeldung (wie auch für das Arbeiten im Poolraum und die Anmeldungen zum Programmierprojekt und zur Klausur) zwingend einen RBG-Account (siehe Organisation, Abschnitt "Zugangsberechtigung") - bitte besorgen Sie sich also schnellstmöglich einen!
Der Anmeldeschluss war Freitag, der 11.04.2008 um 22:00 Uhr.
Ihre Zuteilung finden Sie hier: WebReg-Anmeldesystem
Programmierprojekt
Organisatorisches:- Dieses Programmierprojekt ist mit 20 Punkten angesetzt. Dies entspricht 20% ihrer Endnote im Fach Allgemeine Informatik 2. Die Abschlussklausur wird die restlichen 80% ausmachen.
- Sie können das Projekt in Zweiergruppen bearbeiten (Sie können aber natürlich auch alleine arbeiten). Dreier- oder Vierergruppen sind nicht möglich! Wenn es Probleme mit Ihrer Gruppenzusammensetzung gibt, auch während der Bearbeitung: sprechen Sie uns rechtzeitig an!
- In jedem Fall müssen Sie sich für das Projekt mit Ihrem RBG-Account anmelden - und zwar hier: WebReg-Anmeldesystem - Anleitung: Klicken Sie nach dem Login auf "Jetzt anmelden". Geben Sie dann, falls Sie als Zweiergruppe arbeiten wollen, unter "Gruppenanmeldung" den zweiten RBG-Benutzernamen ein und klicken Sie abschließend auf "Anmelden". Lassen Sie sich nicht davon irritieren, dass von einer "Übung" statt dem Programmierprojekt die Rede ist. Wenn Ihr Studiengang nicht aufgeführt ist, wählen Sie "sonstige".
Eine Anmeldung ist bis zum Abgabeschluss des Projekts möglich, allerdings nicht danach. - Der (spätestmögliche) Abgabeschluss ist der 06.06.2008 um 23:59 Uhr.
Die Zeit sollte problemlos ausreichend sein - sofern Sie nicht auf den letzten Drücker anfangen. - Die Abgabe erfolgt per E-Mail. Details zu Format und Inhalt der Mail und zur Abgabe allgemein entnehmen Sie bitte der Aufgabenstellung.
- Formatieren und kommentieren Sie Ihren Quellcode hinreichend.
- Wichtig:
"Der Fachbereich Informatik misst der Einhaltung der Grundregeln der wissenschaftlichen Ethik großen Wert bei. Zu diesen gehört auch die strikte Verfolgung von Plagiarismus. Mit der Abgabe ihrer Lösung bestätigen Sie, dass Sie der alleinige Autor / die alleinigen Autoren des gesamten Materials sind. Bei Unklarheiten zu diesem Thema finden Sie weiterführende Informationen auf http:/www.informatik.tu-darmstadt.de/Plagiarism oder sprechen Sie Ihren Betreuer an."
Das bedeutet nicht nur, dass "Abschreiben" verboten ist, sondern auch "Abschreiben lassen" und "Lösungen vergleichen" - egal, ob das durch Weitergabe von Programmcode oder mündlich erfolgt!


- Änderungen in Version 2
- - Tippfehler bei "SH" (Ra = Rb >> minus Rc)
- unnötiger OpCode "HALT" entfernt
- fak.txt korrigiert (lieferte für fak(0) 0 statt 1)
- Änderungen in Version 3
- - Aufgabenstellung beim Skalarprodukt klargestellt: es soll nur das Ergebnis ausgegeben werden, nicht auch der Weg dorthin.
- Kommentare der Sprungbefehl-OpCodes korrigiert
- Änderungen in Version 4
- - Der Parser kommt jetzt auch mit "überflüssigen" Leerzeichen in Assemblerdateien klar.
- Wenn unbekannte OpCodes gefunden werden, liefert der Parser jetzt eine Fehlermeldung.
- Die Fehlermeldungen bei der Tastatureingabe und beim Parser sind aussagekräftiger geworden.
- Die eigentliche Aufgabenstellung hat sich immer noch nicht verändert!

Die Ergebnisse des Projekts finden Sie nun im WebReg-Anmeldesystem! Das Bewertungsschema:
- Konstruktor: 1
- Schleife + Abbruch, PC+=4: 2
- Arithmetik/Logik (ALU): 2
- Load/Store: 2
- Jump/Branch: 2
- Ein- und Ausgabe: 2
- fibo.txt: 3
- skalar.txt: 4
- Format + Doku: 2
Übungen
- Übung 1 (Abschied von Karel, Einführung in BlueJ)
-
Aufgabenstellung
uebung01.task
Musterlösung
- Übung 2 (Buchstaben zählen, Euklid)
-
Aufgabenstellung
Musterlösung
- Übung 3 (Buchstaben zählen 2, Caesar)
-
Aufgabenstellung
Musterlösung
- Übung 4 (Attribute und Methoden)
-
Aufgabenstellung
TramTest.java
Musterlösung
- Übung 5 (Rekursive Datentypen)
-
Aufgabenstellung
Vorgabe
Musterlösung
- Übung 6 (Uhrzeit, zirkuläre Liste)
-
Aufgabenstellung
Circle.java
Musterlösung
- Übung 7 (Statische Variablen, Objekt- und Klassenmethoden)
-
Aufgabenstellung
Musterlösung
- Übung 8 (Wiederholung Rekursion)
-
Aufgabenstellung
Musterlösung
- Übung 9 (Vererbung, Polymorphie, Rekursion)
-
Aufgabenstellung
Musterlösung
- Übung 10 (Interfaces, abstrakte Klassen)
-
Aufgabenstellung
Musterlösung
- Übung 11 (Packages)
-
Aufgabenstellung
Vorgabe für Aufgabe 2
Musterlösung
- Übung 12 (Collections)
-
Aufgabenstellung
GolfComparator.java
Musterlösung
- Übung 13 (Exceptions)
-
Aufgabenstellung
Vorgabe
Musterlösung