Guten Abend,
ich habe so ein kleines Problem. Ich programmiere eine kleine "Anwendung" mit Greenfoot.
Es geht darum, dass ein Roboter bis zu einer Wand läuft und diese Wand umrundet.
Code folgt.
Also. Ich weiß nicht genau, wie ich es umsetzten kann. Ich möchte/sollte das mit If-Befehlen und/oder While-Schleifen bearbeiten. (Mir ist die "normale" While-Schleife bekannt, und auch die Do-While-Schleife). Falls ihr mir irgendwie helfen könnt, bitte ich um nicht allzu komplexe Codes.
Anhänge:
Bild meines Projekts (siehe Hauptbild; Bild 1)
Ablauf des Projekts (siehe Ablauf; Bild 2)
Mein Problem: ist, dass
ich von der ersten auf die zweite Position nicht komme. Das sollte aber in jeder Ecke passieren.
Erste Position (siehe Erste Position; Bild 3)
Zweite Position (siehe Zweite Position; Bild 4)
Mein Problem nochmal aufgezeichnet (siehe Problem; Bild 5)
Ich bekomme es nicht umgesetzt (nachdem der Roboter sich Links gedreht hat und einen Schritt nach vorn gemacht hat) , dass er sich nach Rechts dreht. Wie schon erwähnt, sollte das in jeder Ecke geschehen.
public class Robby extends Roboter
{
public void act()
{
if (!wandVorne())
{
bewegen();
}
else {
dreheLinks();
}
do
{
bewegen();
}
while (wandUnten());
}
}
Ich hoffe, ihr konntet mein Problem so halbwegs verstehen, ansonsten fragt doch bitte nach. Zudem habe ich mein Greenfoot-Projekt in die Anhänge gepackt, falls Fragen auftreten und ich diese nicht schnell genug beantworte.
Ansonsten sage ich mal, danke im Voraus.
MfG 7. Roboter.rar