Kleeblattsuche im Wald II

Solange Kara nicht auf einem Kleeblatt steht, versucht er, gerade aus zu laufen. Falls vor ihm ein Baum ist, so positioniert sich Kara links von dem Baum und ruft die Methode followTrees auf. Diese Methode lässt ihn solange gerade aus laufen, wie rechts von ihm ein Baum ist. Danach geht Kara wieder in die Zeile mit den Bäumen und läuft weiter gerade aus.

void followTrees() {
  while (kara.treeRight()) {
    kara.move();
  }
}

public void myProgram() {
  while (! kara.onLeaf()) {
    if (kara.treeFront()) {
      kara.turnLeft();
      kara.move();
      kara.turnRight();
      kara.move();

      followTrees();

      kara.turnLeft();
      kara.move();
      kara.turnRight();
    }
    else {
      kara.move();
    }
  }
  kara.removeLeaf();
}