AntMe! - Das große Krabbeln beginnt
<language>Java</language>
Lernpfad
|
Ziele des Lernpfads
- das Programm Visual Studio 2008 Express kennenlernen
- das Programm AntMe! kennenlernen
- die eigenen Ameisen zum Krabbeln bringen
- kurze Einführung in turtle, die eigene Wiki-Programmierung
Notwendige Installationen für AntMe!
(Die Programme können nur von einem Benutzer installierten werden, der auch alle nötigen Rechte, Schreiben und Ausführen, auf dem PC hat.)
Sieh dir das folgende Video an und reproduziere es an deinem PC nach. |
Alles ist installiert. Das Spiel kann beginnen!
Übernehme die Einstellungen aus dem Video und passe sie mit deinem persönlichen Namen an, damit die Ameisen später im Multiplayer-Modus gegeneinander antreten können. |
Damit du den Quellcode editieren kannst, beendest du die Simlution durch das Schließen beider Simulationsfenster (nicht Visual Studio 2008 Express).
Wir wollen uns jetzt näher mit der Klasse MeineAmeise beschäftigen. Sie enthält wichtige (noch leere) Methoden, mit denen wir das Verhalten der Ameisen wesentlich verändern wollen, um somit auf Futtersuche zu gehen und unsere Ameisen vor Feinden zu schützen. Ameisen stehen von Beginn an vor ihrem Bau und warten auf eine Anweisung, diesen Teil müssen wir bereits selbst programmieren. Es gibt vorgefertigte Methoden, die wir für unsere Ameisen nutzen können. Eine davon heißt "GeheGeradeaus()". Wir wollen sie hier für uns benutzen.
Programmiere die Ameisen mit dem vorgegeben Quellcode so um, dass wenn sie vor dem Bau stehen zunächst immer gerade aus gehen. |
() ();
{}public override void WartetGeheGeradeaus
Ein Beispiel wie die Implementierung funktioniert:
|
Die öffentliche (ohetdme) Wartet() wird aufgerufen, weil die Ameise zum Leben erweckt und vor ihrem Bau steht. Danach wird Wartet() nur dann aufgerufen, wenn die Ameise keinen Arbeitsauftrag mehr hat. Durch den Methodenmodifikator (cbiplu) wird erkennbar, dass die Methode (nfeöihctfl) und für jeden aufrufbar ist. override ist ein weiterer (moidakofrti), der eine bereits durch (rgnebreuv) vorhandene Methode überschreibt. Im Fall der Methode Wartet() soll nach der Bearbeitung aller Anweisungen kein (krcbetegwaür) zurückkommen. Dies geschieht durch die Angabe (vido).
In den geschweiften Klammern folgt der (rpmfu) der Methode. Er enthält alle (enswuieagnn), welche beim Aufruf ausgeführt werden. Jede Anweisung wird mit einem (sikeolmno) abgeschlossen.
Bis jetzt laufen unsere Ameisen ziellos auf dem Gelände herum und haben noch keine Aufgabe. |
{
if (EntfernungZuBau < 100)
{
GeheGeradeaus(10);
}
else
{
BleibStehen();
}
}
{
GeheGeradeaus();
}
{
GeheGeradeaus(150);
DreheUmWinkel(180);
GeheGeradeaus(150);
}
{
GeheGeradeaus(200);
DreheUmWinkel(120);
}
Alle Ameisen stellen sich im Kreis um den Bau auf.Die Ameise entfernt sich von ihrem Bau, genau 150 Schritte, und läuft wieder zurück.Die Ameise läuft im Dreieck zum Bau zurück.Die Ameise geht endlos geradeaus.
Programmiere die Methode WirdMüde! |
() ();
{}public override void WirdMüdeGeheZuBau
Was hast du in diesem Lernpfad gelernt? |
6 | |||||||||||||||||||||||||||
7 | |||||||||||||||||||||||||||
5 | 8 | ||||||||||||||||||||||||||
13 | |||||||||||||||||||||||||||
11 | |||||||||||||||||||||||||||
12 | 2 | 1 | |||||||||||||||||||||||||
10 | |||||||||||||||||||||||||||
4 | |||||||||||||||||||||||||||
3 | 9 | ||||||||||||||||||||||||||
Benutzen Sie zur Eingabe die Tastatur. Eventuell müssen sie zuerst ein Eingabefeld durch Anklicken aktivieren.
- Senkrecht
- Insekt deines Volkes1
- Inhalt der geschweiften Klammern einer Methode5
- Methode wird aufgerufen, wenn Ameisen erschöpft sind6
- Zusammenfassung von gleichartigen Objekten7
- Feind der Ameisen8
- großer Softwarehersteller und Partner von AntMe!9
- gesunde Nahrung der Ameisen10
- Kennzeichnung einer öffentlichen Methode11
- Startpunkt der Ameisen13
- Waagrecht
- eine Methode die Ameisen laufen lässt2
- C, C# und Java ist eine ...3
- süße Nahrung der Ameisen4
- Programmierumgebung von Microsoft12
Keine Ameise, aber eine Schildkröte ist bereits im Lernpfad implementiert. Sie kann mit einem Stift zeichnen und sich genauso bewegen wie unsere Ameisen.
Das erste Fenster zeigt alle möglichen Methoden der Turtle, welche im zweiten Fenster initialisiert wird.
Schreibe in das untere Fenster einen Quellcode, der mit deiner Turtle und den gegebenen Methoden das Haus vom Nikolaus zeichnet! |
public String forward (int n) // läuft n Schritte vorwärts public String backward (int n) // läuft n Schritte rüchwärts public String right(int a) // dreht sich a Grad nach rechts public String left (int a) // dreht sich a Grad nach links public String penUp () // hebt den Stift hoch (kein Zeichnen mehr bei forward/backward) public String penDown () // setzt Stift wieder auf public void home() // legt die Turtle auf den Startpunkt
canvas.clear(); // Zeichenfläche löschen
Turtle turtle = new Turtle(1);
turtle.home();
<eval id="4b756ff051311">
</eval>
<canvas w=600 h=400></canvas>
Was kannst du jetzt
- Grundlagen im Umgang mit Visual Studio Express
- eigenständig AntMe! herunterladen und installieren
- Ameisen auf dem Gelände laufen lassen
- mit turtle objektorientiert Programmieren und Bilder malen
Das Krabbeln geht weiter! Zum nächsten Lernpfad: AntMe! - Auf der Nahrungssuche