Objektorientierte Programmierung: 3. Übung
Wiederholungs-Fragen zu Kapitel 2:
Erste Schritte in der Programmierung (ab Folie 69)
- Welche Klasse wurde in der Vorlesung zum Einlesen
einer ganzen Zahl verwendet?
- Können Sie sich noch an den hierarchisch strukturierten Präfix
erinnern (das "Paket", in dem die Klasse definiert ist)?
- Wie sieht die
import
-Anweisung dafür aus?
- Wie legt man ein Objekt dieser Klasse an?
Was muss man dabei als Parameter übergeben?
- Welche Methode der Klasse dient zum Einlesen von ganzen Zahlen,
liefert also eine ganze Zahl durch Umwandlung der nächsten
Eingabezeichen?
- Was ist die Syntax einer
if
-Anweisung?
Was sind die drei wesentlichen Komponenten?
Kann man den else
-Teil auch weglassen?
- Was ist eine typische Bedingung?
- Wie schreibt sich der Test auf Gleichheit in Java?
Warum verwendet man nicht einfach "
=
"?
- Wie schreibt sich "verschieden von" in Java?
- Eine Bedingung ist ein Wertausdruck,
aber nicht jeder Wertausdruck kann als Bedingung verwendet werden.
Welche Eigenschaft muss ein Wertausdruck haben,
damit man ihn als Bedingung verwenden kann?
- Sind die Klammern
(...)
um die Bedingung in Java nötig?
- Sind die Klammern
{...}
um die Anweisungen im if
-Teil oder else
-Teil
nötig?
- Was ist die Syntax einer
while
-Anweisung?
Was sind die beiden wesentlichen Komponenten?
Was bewirkt diese Anweisung,
d.h. wie wird sie ausgeführt?
- Was ist eine Endlosschleife?
Geben Sie ein Beispiel.
- Was kann man tun,
wenn das Programm nicht terminiert?
- Was ist ein typisches Muster für Schleifen
mit einer Laufvariable i,
die z.B. nacheinander die Werte 1 bis 10
annehmen soll?
Wiederholungsfragen zu Kapitel 3:
Syntaxdiagramme
- Verschoben auf die nächste Übung,
da aufgrund des Programmiertestats wenig Zeit ist.
Besprechung der Hausaufgaben
- Korrekte Lösungen zeigen,
ggf. verschiedene Alternativen.
- Schwierigkeiten besprechen.
- Fragen beantworten.
Erster Praxistest (Programmiertestat)
- Der Übungsleiter verteilt die Sitzplätze.
Beim Testat darf man sich den Platz nicht selbst aussuchen.
- Wir möchten,
das möglichst nur die vorhandenen Rechner
des Pools benutzt werden.
Nur, wenn es nicht genug Plätze gibt,
dürfen einzelne Teilnehmer nach Absprache
ein eigenes Notebook verwenden.
- Die Bearbeitungsdauer ist 60min.
- Man darf gehen,
wenn man fertig ist,
muss sich dann aber mindestens von dem Stockwerk,
am besten aus dem Gebäude entfernen.
Melden Sie sich bitte bei der Aufsicht ab.
Wenn Sie vor Ende des Testats in dem Stockwerk angetroffen werden,
kann das als Täuschungsversuch behandelt werden.
- Toilettenbesuche während des Testats sind nicht erwünscht.
Falls nötig,
dürfen Sie nur die nächstliegende Toilette verwenden
(so dass Sie nicht mit Teilnehmern der anderen Gruppe
zusammentreffen können).
Es ist möglich,
dass ein Tutor zur Kontrolle mitgeschickt wird.
- Mobiltelefone bitte ausschalten.
Falls die Erreichbarkeit unbedingt nötig ist
(z.B. wegen kleiner Kinder),
bitte mit der Aufsicht sprechen.
- Es dürfen 5 DIN A4 Blätter
mit Notizen verwendet werden
(beiseitig beschriftet oder bedruckt).
- Auf jedem Blatt soll der Name des Besitzers stehen,
so dass sie nicht getauscht werden können.
- Es darf keine Lösung zum Programmiertestat auf den Notizblättern
stehen,
weder vorher noch hinterher.
Auch Lösungen zu Programmiertestaten von anderen Gruppen
sind verboten
(es sei denn, die Aufgabe wäre so häufig,
dass man sich das zufällig als Beispiel aufgeschrieben hat).
- Unterlassen Sie jedes Verhalten,
das als Täuschungsversuch missverstanden werden könnte.
Also nichts mit dem Nachbarn sprechen
oder tauschen.
Notfalls rufen Sie eine Aufsicht zur Kontrolle.
- Auch für einen Blick auf den Monitor des Nachbarn
kann man disqualifiziert werden.
- Eclipse oder andere Entwicklungsumgebungen sind nicht erlaubt.
Die Aufgaben sollen mit YAPEX gelöst werden.
Ein Editor wie
gedit
,
der Compiler javac
und die JVM-Implementierung java
dürfen auf der Kommadozeile verwendet werden,
wenn man unbedingt will.
In der Klausur wird das aber voraussichtlich ausgeschlossen sein.
- Es gibt zwei Praxispunkte für das Testat,
wenn die am Ende der Bearbeitungsfrist gespeicherte Lösung
alle YAPEX Tests besteht,
und auch eine eventuelle manuelle Nachkontrolle keine Tricks findet.
Tricks wären Lösungen,
die nur genau die vorgegebenen Tests erfüllen,
aber die Aufgabe nicht allgemein lösen.
Es werden eventuell nachträglich auch zusätzliche Tests
ausgeführt,
um solche Tricks automatisch zu finden.
- Falls Sie die Aufgabe nicht innerhalb der 60min lösen können,
versuchen Sie bitte,
am Ende der Bearbeitungszeit ein Programm gespeichert zu haben,
das einer Lösung möglichst nahe kommt.
Sie können am Donnerstag im Tutorium noch
einen Praxispunkt für das Testat bekommen,
wenn Sie dann erklären können,
wie man von dem zuletzt gespeicherten Programm
zu einer korrekten Lösung kommt.
Voraussetzung ist aber,
dass das zuletzt gespeicherte Programm zumindest Ansätze
einer Lösung erkennen lässt.
Wenn Sie z.B. am Ende frustriert alles löschen,
so dass dann das leere Programm gespeichert ist,
würde Ihnen im Tutorium der Punkt
auch verwehrt werden,
wenn Sie mit einer perfekten Lösung kommen.
- Falls Sie den Fehler gar nicht selbst finden,
können Sie im Tutorium auch Hilfe bekommen
und den Punkt noch bekommen
(falls der Abstand zur korrekten Lösung nicht allzu groß
war).
Sie müssen sich den Punkt im Tutorium
vor dem nächsten Testat abholen,
also entweder in dieser Woche
oder in der nächsten Woche,
aber nicht später.
Sie müssen persönlich ins Tutorium kommen
und sind eingeladen,
auch noch für weitere Fragen oder betreute Übung
zu bleiben.
- Wenn die Aufgabenstellung nicht klar ist,
fragen Sie bitte.
- Melden Sie sich auch,
wenn es technische Probleme mit YAPEX geben sollte.
- Wenn Sie eine Fehlermeldung des Compilers gar nicht verstehen,
und keine Idee mehr haben,
wie Sie das Problem lösen können,
können Sie probieren,
zu fragen.
Es liegt im Ermessen des Übungsleiters,
ob er antwortet
und wie genau er antwortet.
Bei mehreren Fragen des gleichen Teilnehmers
sinkt die Wahrscheinlichkeit und Präzion von Antworten stark.