Как увеличить переменную в цикле, чтобы переместить объект на определенное количество точек, повернуть в новом направлении - PullRequest
0 голосов
/ 29 марта 2019

поверните по часовой стрелке: сначала 3 раза поверните на север, затем 3 раза на восток, 3 раза на юг, затем 3 раза на запад, затем повторите.

В настоящее время мой код поворачивает птицу с севера на восток к западу, затем с севера на восток на юг и перемещается на 2 к северу, но не увеличивает никакого другого направления

создание циклов с массивом и временной переменной, хранящей направление строки, просто чтобы проверить, какое направление необходимо

public Direction getMove(){
        if(count > 12){
            count = 0;
        }else if(count <= 12){
            if(count >= 0 && count <= 3){
                count++;
                return Direction.NORTH;
            }else if(count > 3 && count <= 6){
                count++;
                return Direction.EAST;
            }else if(count > 6 && count <= 9){
                count++;
                return Direction.SOUTH;
            }else if(count > 9 && count <= 12){
                count++;
                return Direction.WEST;
            }
        }

1 Ответ

0 голосов
/ 29 марта 2019

Ваш код не будет компилироваться из-за пропущенного оператора return.

Это гораздо более простой метод, не беспокойтесь счетчиком покоя, просто найдите его модуль.

public Direction getMove()
{
   Object dir = Direction.WEST;    
   switch(count%4)
   {
      case 0: Direction.NORTH;
      case 1: Direction.NORTH;
      case 2: Direction.NORTH;    
   }
   count++;
   return dir;

 }

Надеюсь, это сработает.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...