Beruflich Dokumente
Kultur Dokumente
01 Hallo PDF
01 Hallo PDF
Allgemeine Hinweise
sein. Ubersetzt
Ihre Abgabe
nicht (z.B. weil package-Anweisungen in Ihren Quellen enthalten sind), wird sie mit 0 Punkten bewertet. Sorgen
ubersetzt
Ihre Abgaben werden automatisch korrigiert. Bei den Downloads der Ubungsaufgaben
finden Sie eine verkurzte
zuraumen.
Werden im Test Fehler angezeigt werden Sie sicher nicht die vollen Punkte auf Ihre Abgabe
erhalten.
Bewertet werden ausschlielich Abgaben die vor Ablauf der Abgabefrist korrekt ins EST hochgeladen wurden.
ubertragen
Bitte prufen
Sie nach dem hochladen im EST nochmals nach ob die Dateien ordnungsgema
wur
den in dem Sie diese nochmals herunterladen und deren Inhalt uberpr
ufen.
Die Lesbarkeit von Quellcode hangt
teilweise sehr stark von dessen Formatierung ab. Deswegen bewerten wir in den Abgaben auch die Formatie
auch ruckwirkend
Plagiate eintragen.
5 Punkte
Das erste Programm, das jeder Informatiker in einer neuen Programmiersprache erstellt, ist Hello World. Auch
Sie sollen die GdI-Vorlesung mit diesem einfachen Programm beginnen.
1. Erstellen Sie eine Java-Datei HelloWorld.java (Zum Beispiel mit Eclipse, Notepad oder einem anderen
Texteditor ihrer Wahl)
2. Kopieren Sie den folgenden Text in die Datei:
public class HelloWorld{
public static void main(String[] args){
System.out.println("Hello World!");
}
}
3. Fuhren
Sie ihr Programm aus und geben dieses im EST ab.
4. Deklarieren Sie in der main-Methode in der Zeile nach der Anweisung System.out.println("Hello
World!"); eine Variable mit dem Name hallo und dem Datentypen float.
5. Initialisieren Sie die Variable hallo mit dem Wert 42.
6. Legen Sie eine weitere Variable mit dem Bezeichner welt fur
einen ganzzahligen Datentyp an und initialisieren Sie diese mit dem Wert 23.
7. Geben Sie (mit System.out.println) die Summe von hallo und welt aus.
8. Fuhren
Sie ihr Programm erneut aus und geben dieses nochmals im EST ab.
14 Punkte
F. Bauer, L. Hocker,
V. Lange, L. Schmidt https://gdi.cs.fau.de/s15
Seite 1 von 3
Aufgabenblatt 1
Grundlagen der Informatik, Sommersemester 2015
schreiben. Der Kern des Frameworks ist ein sogenannter Runloop, dessen Verhalten Sie in dieser Aufgabe implementieren sollen. Im Wesentlichen ist ein Runloop eine Endlosschleife, in der periodisch definierte Methoden
aufgerufen werden.
1. Laden Sie das GdI-Framework (gdi-01.jar) fur
diese Aufgabe von der GdI-Webseite herunter.
2. Binden Sie die .jar-Datei in Ihr Projekt ein (eine Beschreibung fur
Eclipse finden Sie im Ubungsfoliensatz
Klassenbibliotheken auf der GdI-Webseite).
3. Erstellen Sie eine Java-Datei Runloop.java und fugen
Sie dort den folgenden Text ein:
import gdi.game.runloop.GdiKit;
public class Runloop extends GdiKit{
public static void main(String[] args){
GdiKit.main(args);
}
protected static void setupWorld() {
}
protected static String update(String inStr, double time) {
return null;
}
protected static void render(String str){
}
}
4. Fuhren
Sie Ihr Programm aus. Es sollte nun eine Text der Art Booting World with Version ... ange
zeigt werden.
5. Bevor der Runloop startet, muss das Programm durch einen Aufruf von setupWorld() initialisiert werden.
Fugen
Sie diesen am Ende der main-Methode ein.
6. Erweitern Sie den Rumpf der setupWorld-Methode so, dass die Zeichenkette
Starte Verarbeitung...
angezeigt wird. Starten Sie Ihr Programm. In der (Eclipse-)Konsole sollte der obige Text angezeigt werden.
7. Ihr Programm soll ein vorgegebenes Textdokument zeilenweise lesen, jede Zeile verschlusseln
und an
schlieend in einem vordefinierten Format auf der Konsole ausgeben. In einem Runloop gibt es dazu
typischerweise zwei Methoden: update um Werte zu berechnen und render um Werte anzuzeigen.
Erweitern Sie die render-Methode so, dass die ubergebene
Zeichenkette str auf der Konsole ausgege
ben wird.
8. In der update-Methode soll die Zeichenkette in inStr mit Hilfe der Methode GdiKit.encrypt verschlusselt
erzeugen.
9. Die Methode update soll nicht mehr null zuruckgeben,
sondern eine wie folgt formatierte Zeichenkette:
[chiffre]:[inStr]:[GdiKit.encrypt(inStr, chiffre)].
Fur
werden.
den Aufruf update("Hallo", 1.7) soll also 5:Hallo:Mfqqt zuruckgegeben
Zeit initialisiert werden. Rufen Sie dazu GdiKit.loadTextFromFile und GdiKit.initTime in der Methode
setupWorld auf.
11. Nun kann der eigentliche Runloop am Ende der main-Methode eingefugt
werden. Der Runloop soll eine
Endlosschleife sein, die pro Durchlauf eine Zeile der geladenen Textdatei liest (GdiKit.getLine). Diese
Zeichenkette soll in update verschlusselt
und das Ergebnis an render ubergeben
werden. Wenn keine
F. Bauer, L. Hocker,
V. Lange, L. Schmidt https://gdi.cs.fau.de/s15
Seite 2 von 3
Aufgabenblatt 1
Grundlagen der Informatik, Sommersemester 2015
weitere Zeile mehr gelesen werden kann, soll die Schleife verlassen werden.
12. Der update-Methode muss als weiterer Parameter die aktuelle Zeit (time in Sekunden) ubergeben
wer
den. Verwenden Sie GdiKit.getTime(), um die korrekten Werte zu erzeugen. Starten Sie Ihr Programm.
Es sollte in etwa die folgende Ausgabe angezeigt werden:
Starte Verarbeitung...
1:We can only see:Xf dbo pomz tff
1:a short distance:b tipsu ejtubodf
1:ahead, but we can:bifbe, cvu xf dbo
1:see plenty there:tff qmfouz uifsf
1:that needs to be:uibu offet up cf
1:done.:epof.
1:(Alan Turing, 1950):(Bmbo Uvsjoh, 2061)
13. Die Ausgabe wird im Moment zu schnell erzeugt. Verwenden Sie die Dokumentation (doc-01.zip fur
diese
Aufgabe auf der Webseite), um eine Methode zu finden, mit der Sie sicherstellen konnen,
dass die Schleife
nur zweimal pro Sekunde durchlaufen wird.
14. Wenn Sie sicher sind, dass Ihr Programm korrekt funktioniert, testen Sie Ihre Abgabe mit dem studentischen Vorabtest.
Dazu konnen
Sie entweder die Zeile
GdiKit.main(args);
durch
GdiKit.main(new String[]{"--test"});
ersetzen oder Ihr Programm mit dem Argument --test (siehe Run Configurations Arguments Program Arguments in Eclipse) ausfuhren.
F. Bauer, L. Hocker,
V. Lange, L. Schmidt https://gdi.cs.fau.de/s15
Seite 3 von 3