diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/Q9/MovingRobot.java | 20 | ||||
| -rw-r--r-- | src/Q9/MovingRobotTest.java | 13 |
2 files changed, 33 insertions, 0 deletions
diff --git a/src/Q9/MovingRobot.java b/src/Q9/MovingRobot.java index 9e695e4..6ed232a 100644 --- a/src/Q9/MovingRobot.java +++ b/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())); diff --git a/src/Q9/MovingRobotTest.java b/src/Q9/MovingRobotTest.java index 275c071..dbc5671 100644 --- a/src/Q9/MovingRobotTest.java +++ b/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); + } } |
