8.581
Bearbeitungen
Jneug (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
Jneug (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
||
Zeile 7: | Zeile 7: | ||
{| {{Prettytable}} | {| {{Prettytable}} | ||
| '''1)''' | | '''1)''' | ||
| Der Rover soll | | Der Rover soll das Gestein analysieren. Dazu soll er dem Weg aus Marken folgen, indem er immer bis zur nächsten Marke fährt und sich nach links dreht. | ||
| {{Roverkarte| | | {{Roverkarte|.\nM....M\n.M.......M\n........G.....M\n.\n.\n...M........M\n.\n...M.M\n.\n.M..........M\nM.....R..M....M}} | ||
|- | |- | ||
| '''2)''' | | '''2)''' | ||
| Der Rover soll | | Der Rover soll auf jedem Feld eine Marke ablegen. | ||
| {{Roverkarte|.\ | | {{Roverkarte|HHHHHHHHHHHHHHH\nH...H.........H\nH.........H...H\nH....H........H\nH..........H..H\nH...H.........H\nH.............H\nH......H......H\nH..H..........H\nH........H....H\nHR..H.........H\nHHHHHHHHHHHHHHH}} | ||
|} | |} | ||
{{Lösung:Start|Lösung zu | {{Lösung:Start|Lösung zu 1)}} | ||
<syntaxhighlight lang="Java"> | <syntaxhighlight lang="Java"> | ||
public void act() { | public void act() { | ||
Zeile 30: | Zeile 30: | ||
entferneMarke(); | entferneMarke(); | ||
drehe("links"); | drehe("links"); | ||
} | |||
</syntaxhighlight> | |||
{{Lösung:End}} | |||
{{Lösung:Start|Lösung zu 2)}} | |||
<syntaxhighlight lang="Java"> | |||
public void act() { | |||
String richtung = "links"; | |||
do { | |||
fahreBisHuegel(); | |||
fahreUmHuegel(); | |||
fahreBisHuegel(); | |||
wechseleReihe(richtung); | |||
if( richtung == "links" ) | |||
richtung = "rechts"; | |||
else | |||
richtung = "links"; | |||
} while( !huegelVorhanden("links") ); | |||
} | |||
public void fahreBisHuegel() { | |||
while( !huegelVorhanden("vorne") ) { | |||
setzeMarke(); | |||
fahre(); | |||
} | |||
setzeMarke(); | |||
} | |||
public void fahreUmHuegel() { | |||
drehe("links"); | |||
if( !huegelVorhanden("vorne") ) { | |||
fahre(); | |||
drehe("rechts"); | |||
fahre(); | |||
fahre(); | |||
drehe("rechts"); | |||
fahre(); | |||
drehe("links"); | |||
} else { | |||
drehe("links"); | |||
drehe("links"); | |||
fahre(); | |||
drehe("links"); | |||
fahre(); | |||
fahre(); | |||
drehe("links"); | |||
fahre(); | |||
drehe("rechts"); | |||
} | |||
} | |||
public void wechseleReihe( String pRichtung ) { | |||
drehe(pRichtung); | |||
fahre(); | |||
drehe(pRichtung); | |||
} | } | ||
</syntaxhighlight> | </syntaxhighlight> |
Bearbeitungen