Im linken Programmierfenster sind alle Methoden der Kara-Klasse als grün geschriebener Kommentar bei jedem Start von Javakara angegeben. Ansonsten programmiert man mit ganz normalem Java. Am Anfang stehen die Methoden ohne Rückgabewerte (void):
Dann folgen die Methoden mit Rückgabewerten, d.h. Funktionen:
Programmstruktur: Die standardmäßig angegebene Methode myprogram() ist die Methode, von der alles andere gestartet wird. Sie entspricht etwa der Methode action(), die wir vorher in den BlueJ-Programmen benutzten, und muss ihren Namen behalten. Daneben kann man natürlich beliebig viele weitere Methoden formulieren. Der angegebene Klassenname FindeBaum für das Beispielprogramm kann natürlich geändert werden, aber man muss darauf achten, dass die gespeicherte Datei exakt den gleichen Namen trägt. Das geschieht bei BlueJ automatisch.
Das erste Beispiel: Solange vorne kein Baum steht bewegt sich Kara um einen Schritt nach vorne.
public void myProgram() { while (!kara.treeFront()) { kara.move(); } }
Nimm das Beispielprogramm FindeBaum als Vorlage, nenne die Klasse jetzt FindeBaum2, speichere es ab als FindeBaum2.java und ergänze das Programm so, dass Kara den Weg zurück läuft und wieder seine Startposition einnimmt. Tipp: Man darf in Kara-Programmen auch Variablen benutzen! Teste das Programm aus mit Javakara und kopiere den kompletten Programmtext (ohne die grünen Kommentare) in dieses Formularfeld.
Nimm das Beispielprogramm FindeBaum oder FindeBaum2 als Vorlage, nenne die Klasse jetzt FindeBlatt, speichere es ab als FindeBlatt.java und ergänze das Programm so, dass Kara bis zum Blatt läuft und stehenbleibt. Teste das Programm aus mit Javakara und kopiere den kompletten Programmtext (ohne die grünen Kommentare) in dieses Formularfeld.
Nimm das Programm FindeBlatt als Vorlage, nenne die Klasse jetzt HoleBlatt, speichere es ab als HoleBlatt.java und ergänze das Programm so, dass Kara bis zum Blatt läuft, es aufnimmt, zurück zu seiner Startposition geht und dort das Blatt ablegt. Teste das Programm aus mit Javakara und kopiere den kompletten Programmtext (ohne die grünen Kommentare) in dieses Formularfeld.
Das war die Lösung der Problemstellungen nach "herkömmlichen" Programmiermethoden. In der nächsten Stunde werden wir behandeln, dass man das auch GANZ ANDERS machen kann.
Auf meinem PC hat das alles (bitte auswählen!)
prima funktioniert. nicht alles funktioniert (für mehr siehe unten).
Hier sind weitere Informationen zu meinen Problemen: