Lernpfad:Lerntheke Marsrover/16

Aus Informatik-Box
Zur Navigation springen Zur Suche springen
Steine analysieren II
Greenfoot Rover.png
Arbeitsauftrag

Programmiere den Rover jeweils so, dass er alle Gesteine in der gezeigten Welt einsammelt. Notiere das Programm zuerst auf einem Blatt, bevor du es in Greenfoot eingibst.


Icon Info.png
Das Programmieren mit Papier und Stift ist vor allem für die Vorbereitung auf die Klausur wichtig.
1) Greenfoot Marsrover 16-1.jpg
Kartendaten:
".\n.\n.\n.....RGGGG\n.....G...G\n.....GGGGG"
2) Greenfoot Marsrover 16-3.jpg
Kartendaten:
".\n.\n.\n.\n......H\n.....<HG\n......H"
3) Greenfoot Marsrover 16-4.jpg
Kartendaten:
".\n.\n.\n.\n......HHH\n.....GHR\n......HHH"
4) Greenfoot Marsrover 16-2.jpg
Kartendaten:
".\n.\n.\n.......GGG\n.......GGG\n.\n........R\n.\n.......GGG\n.......GGG"
Lösung

1)

public void act() {
    fahre();
    analysiereGestein();
    fahre();
    analysiereGestein();
    fahre();
    analysiereGestein();
    fahre();
    analysiereGestein();
    drehe("rechts");
    fahre();
    analysiereGestein();
    fahre();
    analysiereGestein();
    drehe("rechts");
    fahre();
    analysiereGestein();
    fahre();
    analysiereGestein();
    fahre();
    analysiereGestein();
    fahre();
    analysiereGestein();
    drehe("rechts");
    fahre();
    analysiereGestein();
}

2)

public void act() {
    drehe("rechts");
    fahre(); fahre(); 
    drehe("rechts");
    fahre(); fahre();
    drehe("rechts");
    fahre(); fahre();
    analysiereGestein();
}

3)

public void act() {
    fahre(); fahre(); 
    drehe("rechts");
    fahre(); fahre(); 
    drehe("rechts");
    fahre(); fahre();
    fahre(); fahre(); 
    drehe("rechts");
    fahre(); fahre();
    analysiereGestein();
}

4)

public void act() {
    drehe("links");
    fahre(); fahre();
    drehe("links");
    
    // oberes Gesteinsfeld
    analysiereGestein(); fahre();
    analysiereGestein(); drehe("rechts"); fahre();
    analysiereGestein(); drehe("rechts"); fahre();
    analysiereGestein(); fahre();
    analysiereGestein(); drehe("rechts"); fahre();
    analysiereGestein(); fahre();
    
    fahre(); fahre(); fahre();
    
    // unteres Gesteinsfeld
    analysiereGestein(); fahre();
    analysiereGestein(); drehe("rechts"); fahre();
    analysiereGestein(); fahre();
    analysiereGestein(); drehe("rechts"); fahre();
    analysiereGestein(); drehe("rechts"); fahre();
    analysiereGestein();
}