Commit e223a77
Changed files (2)
src/Q9/MovingRobot.java
@@ -45,6 +45,24 @@ public class MovingRobot extends Robot {
return r1.getX() == r2.getX() && r1.getY() == r2.getY();
}
+ public static String printGrid(Robot x, Robot y) {
+ String grid = "";
+ int row = 0;
+
+ for (int column = 0; column < 10; column++) {
+ if (x.getX() == row && x.getY() == column) {
+ grid += "|X";
+ } else if (y.getX() == row && y.getY() == column) {
+ grid += "|Y";
+ } else {
+ grid += "| ";
+ }
+ }
+ grid += "|\n";
+
+ return grid;
+ }
+
public String printMoves() {
ArrayList<String> printableMoves = new ArrayList<String>();
for (Integer move : this.moves) printableMoves.add(String.valueOf(move));
@@ -139,6 +157,8 @@ public class MovingRobot extends Robot {
System.out.println(
String.format("R1 (%d, %d), R2 (%d, %d)", r1.getX(), r1.getY(), r2.getX(), r2.getY()));
+
+ System.out.println(MovingRobot.printGrid(r1, r2));
}
System.out.println(String.format("Collision at: (%d, %d)", r1.getX(), r1.getY()));
src/Q9/MovingRobotTest.java
@@ -143,4 +143,17 @@ public class MovingRobotTest extends TestCase {
subject.move(Robot.RIGHT);
assertEquals(String.format("%d,%d", Robot.RIGHT, Robot.RIGHT), subject.printMoves());
}
+
+ public void test_printGrid() {
+ Robot r1 = new MovingRobot(0, 0);
+ Robot r2 = new MovingRobot(9, 9);
+
+ String expected = "|X| | | | | | | | | |\n";
+ String result = MovingRobot.printGrid(r1, r2);
+
+ System.out.println(expected);
+ System.out.println(result);
+
+ assertEquals(expected, result);
+ }
}