- Ladet euch den Hamster-Simulator herunter und entpackt ihn auf euren Stick.
- Wenn Ihr den Hamster-Simulator auf eurem PC zuhause benutzen wollt, benötigt ihr noch Java. Das könnt ihr über Java OpenJDK installieren.
- Ladet euch das Hamster-eBook herunter und speichert es auf eurem Stick.
- Startet den Hamstersimulator über die Datei hamstersimulator.jar (funktioniert zuhause nur, wenn ihr vorher Java installiert habt, siehe oben!).
Lektion 1 - Der Hamster lernt laufen
Aufgabe 1: Der Hamster-Simulator
Aufgabe 2: Die ersten Fachkonzepte
In dieser Aufgabe werdet ihr die ersten Fachkonzepte der Programmiersprache Java kennen lernen. Dies ist die Sprache, mit der der Hamster gesteuert werden kann. Um dies zu tun, muss man dem Hamster Befehle geben können. Eine Abfolge von Befehlen nennt man Programm.
- Lest die beiden Seiten Fachkonzept: Befehl und Fachkonzept: Programm durch.
- Notiert euch wichtige Begriffe und die Syntax-Diagramme in eurem Ordner.
Aufgabe 3: Der erste Kontakt
- alle Körner zu sammeln und
- diese unten rechts in der Ecke „einzulagern“
Testet euer Programm! Nachdem ihr das Programm einmal getestet habt, setzt den Simulator zurück, damit der Hamster immer von der gleichen Position startet!
Speichert das Programm und das Territorium auf eurem Stick unter dem Namen Lektion1_ErsterKontakt ab.
void main() { vor(); vor(); linksUm(); linksUm(); linksUm(); vor(); vor(); nimm(); linksUm(); vor(); vor(); vor(); linksUm(); linksUm(); linksUm(); vor(); vor(); nimm(); linksUm(); vor(); vor(); linksUm(); linksUm(); linksUm(); vor(); vor(); vor(); gib(); gib(); }
Aufgabe 4: Wächter-Hamster
Schreibt ein Programm, das dem Hamster befiehlt, seinen Kornvorrat einzusammeln und zu bewachen. Speichert das Programm und das Territorium auf eurem Stick unter dem Namen Lektion1_Waechter ab.
void main() { vor(); vor(); vor(); vor(); vor(); vor(); vor(); nimm(); nimm(); nimm(); linksUm(); linksUm(); vor(); vor(); vor(); vor(); linksUm(); vor(); vor(); vor(); vor(); nimm(); nimm(); linksUm(); vor(); vor(); vor(); linksUm(); linksUm(); linksUm(); vor(); vor(); vor(); gib(); gib(); gib(); gib(); gib(); linksUm(); linksUm(); vor(); }
Aufgabe 5: Weitere Fachkonzepte
Diskutiert, warum das Hamster-Programm aus Aufgabe 4 eigentlich ziemlich ineffizient ist. Wenn ihr eine Idee habt, lest euch das Fachkonzept: Methode durch.
Doch wie funktioniert das eigentlich genau? Warum kann der Hamster diesen komischen Text, den wir ein Programm nennen, eigentlich verstehen? Lest euch zur Beantwortung dieser Frage das Fachkonzept: Kompilierung durch.
- Notiert euch wichtige Begriffe und die Syntax-Diagramme in eurem Ordner.
Aufgabe 6: Effizienterer Wächter
Bearbeitet euren Wächter-Hamster aus Aufgabe 4, indem ihr:
- sich wiederholende Befehle zu Methoden zusammenfasst
- diese Methoden statt der Wiederholungen im Hauptprogramm verwendet
Speichert das Programm und das Territorium auf eurem Stick unter dem Namen Lektion1_EffizienterWaechter ab.
void kehrt() { linksUm(); linksUm(); } void rechtsUm() { linksUm(); linksUm(); linksUm(); } void nimm2() { nimm(); nimm(); } void vor4() { vor(); vor(); vor(); vor(); } void vor3() { vor(); vor(); vor(); } void gib5() { gib(); gib(); gib(); gib(); gib(); } void main() { vor4(); vor3(); nimm2(); nimm(); kehrt(); vor4(); linksUm(); vor4(); nimm2(); linksUm(); vor3(); rechtsUm(); vor3(); gib5(); kehrt(); vor(); }
Aufgabe 7: Dumm gelaufen...
- Baut das Territorium rechts nach und schreibt das Programm rechts GENAU ab. Testet das Programm anschließend!
- Es gibt in diesem Programm zwei verschiedene Fehler! Lest das Fachkonzept: Fehlermeldung und notiert euch wichtige Infos in eurem Ordner
- Korrigiert die beiden Fehler im Programm!
void main() { VOR(); }
- Kompilierungs- / Syntax-Fehler:
VOR();
ist falsch geschrieben, richtig muss esvor();
(Kleinbuchstaben) lauten. - Laufzeit- / Logikfehler: Der Hamster würde gegen die Wand rennen. Also muss er sich zuerst nach rechts drehen.
void main() { linksUm(); linksUm(); linksUm(); vor(); }
Aufgabe 8: Slalom
Der Hamster soll Slalom laufen und alle Körner sammeln!
- Benutzt selbst gebaute Methoden, um den Code lesbarer zu machen!
- Auf der Kachel mit dem Hamster liegt auch ein Korn!
Speichert das Programm und das Territorium auf eurem Stick unter dem Namen Lektion1_Slalom ab!
void rechtsUm() { linksUm(); linksUm(); linksUm(); } void vor2nimm2() { vor(); nimm(); vor(); nimm(); } void linksKurve() { vor2nimm2(); linksUm(); vor2nimm2(); linksUm(); } void rechtsKurve() { vor2nimm2(); rechtsUm(); vor2nimm2(); rechtsUm(); } void main() { nimm(); vor(); nimm(); rechtsUm(); linksKurve(); rechtsKurve(); linksKurve(); rechtsKurve(); vor2nimm2(); }
Abschluss & Quiz
Seht euch eure Unterlagen durch. Geht insbesondere die Fachkonzepte (Befehl, Programm, Methode, Kompilierung und Fehlermeldung) noch einmal durch.
Zum Überprüfen des Gelernten könnt ihr am Ende noch ein Quiz bearbeiten!