Lernpfad:Lerntheke Marsrover/27: Unterschied zwischen den Versionen

Aus Informatik-Box
Zur Navigation springen Zur Suche springen
Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
 
Zeile 28: Zeile 28:
</syntaxhighlight>
</syntaxhighlight>


{{Aufgabe:Start}}
{{Aufgabe:Start|Icon=Greenfoot Rover.png}}
# 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.  
# 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.  
# Programmiere die Rover so, dass sie sich auch auf einer Karte mit einigen von dir platzierten Hindernissen finden.  
# Programmiere die Rover so, dass sie sich auch auf einer Karte mit einigen von dir platzierten Hindernissen finden.  

Aktuelle Version vom 1. Oktober 2020, 15:29 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 zuerst die folgende Anfrage in die Rover-Klasse (direkt unter die act()-Methode), 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;
    }
Greenfoot Rover.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.