将对象向右或向左旋转90度并在网格上向前移动

时间:2012-03-18 17:38:32

标签: java point

我有以下场景,我需要创建一个java程序。任何想法如何实现这个:

一个可以在网格上移动的小型机器人,由简单的命令控制。 在这个例子中,它将使用一个简单的坐标系统在5x5网格上移动 - 0,0是左下角,4,4是右上角。

我们可以通过发送包含命令的字符串来控制机器人,例如:RFLFFRF

R表示向右旋转90度,L向左旋转90度,F表示在流动站当前朝向的方向上向前移动一个方格。罗孚从面向北方的0,0开始(“向上”网格)。 我需要编写一个程序来接受命令串并在这些命令之后返回obot的网格位置

2 个答案:

答案 0 :(得分:0)

编写包含位置和方向的机器人类,然后在其上实现三个命令(R,L和F)。最后,编写代码来解析命令序列并运行命令。创建一个新机器人,在其上运行命令序列并在完成后输出位置。

答案 1 :(得分:0)

功能:      public int Robot(int input1,int input2,String input3,String input4)      {         int标志= 0;         字符串s [] = input3.spilt(“-”);         int x = Integer.parseInt(s [0]);         int y = Integer.parseInt(s [1]);         字符串curface = s [2];          for(int i = 0; i0){x-;} else {flag = 1; break;} break;                     情况“ E”:if(x0){y--;}否则{flag = 1; break;};                 }           }         }         字符串out =“”;         如果(标志== 0)         {             out =“” + x +“-” + y +“-” + Curface;         }         其他         {            out =“” + x +“-” + y +“-” +曲线+“-ER”;         =
        }         返回     }