Lernpfad:Lerntheke Marsrover/27: Unterschied zwischen den Versionen

Aus Informatik-Box
Zur Navigation springen Zur Suche springen
Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
Zeile 6: Zeile 6:


<syntaxhighlight lang="java" lines="" inline="">
<syntaxhighlight lang="java" lines="" inline="">
public boolean roverVorne() {
    public boolean roverVorne() {
  // todo
        Rover r = null;
}
 
        switch( getRotation() ) {
            case 0:
                r = (Rover) getOneObjectAtOffset(1, 0, Rover.class);
                break;
            case 90:
            r = (Rover) getOneObjectAtOffset(0, 1, Rover.class);
            break;
            case 180:
            r = (Rover) getOneObjectAtOffset(-1, 0, Rover.class);
            break;
            case 270:
            r = (Rover) getOneObjectAtOffset(0, -1, Rover.class);
            break;
        }
 
        return r != null;
    }
</syntaxhighlight>
</syntaxhighlight>



Version vom 30. September 2020, 17:28 Uhr

Rover-Liebe

Der Mars-Rover ist so alleine. ☹️ Er wünscht sich einen Partner. Kannst du ihm helfen, einen anderen Rover zu finden?

Kopiere die folgende Anfrage in die Rover-Klasse, damit er prüfen kann, ob auf dem Feld vor ihm ein Rover steht.

public boolean roverVorne() { Rover r = null; switch( getRotation() ) { case 0: r = (Rover) getOneObjectAtOffset(1, 0, Rover.class); break; case 90: r = (Rover) getOneObjectAtOffset(0, 1, Rover.class); break; case 180: r = (Rover) getOneObjectAtOffset(-1, 0, Rover.class); break; case 270: r = (Rover) getOneObjectAtOffset(0, -1, Rover.class); break; } return r != null; }

Icon Heft.png
Arbeitsauftrag
  1. Leere die Welt und platziere zwei Rover an zufälligen Orten. Programmiere die Rover so, dass sie sich gegenseitig suchen, bis sie sich gefunden haben.
  2. Programmiere die Rover so, dass sie sich auch auf einer Karte mit einigen von dir platzierten Hindernissen finden.
  3. Finden sich die Rover auch auf zufällig generierten Karten? Probiere es aus und passe dein Programm gegebenenfalls an.