diff options
| author | mo khan <mo@mokhan.ca> | 2019-08-05 12:27:36 -0600 |
|---|---|---|
| committer | mo khan <mo@mokhan.ca> | 2019-08-05 12:27:36 -0600 |
| commit | 886238e80c00ad150650c648be4da48b3cc7e608 (patch) | |
| tree | 37a9558746c2baed72e71245e5de3cbe65229638 /src | |
| parent | 6eced4703a3e6e71c374af65975a1fe1d760841c (diff) | |
add console entry point for robot program
Diffstat (limited to 'src')
| -rw-r--r-- | src/App.java | 3 | ||||
| -rw-r--r-- | src/Q9/MovingRobot.java | 19 |
2 files changed, 22 insertions, 0 deletions
diff --git a/src/App.java b/src/App.java index e1c9498..4fdb55f 100644 --- a/src/App.java +++ b/src/App.java @@ -38,6 +38,9 @@ public class App { case 8: Q8.BadmintonScoring.main(args); break; + case 9: + Q9.MovingRobot.main(args); + break; default: System.out.println("Bye"); System.exit(0); diff --git a/src/Q9/MovingRobot.java b/src/Q9/MovingRobot.java index a7b462c..c063c14 100644 --- a/src/Q9/MovingRobot.java +++ b/src/Q9/MovingRobot.java @@ -53,6 +53,8 @@ public class MovingRobot extends Robot { public void move() { this.nextMove = generateNextMove(); + if (!validateNextMove(this.nextMove)) this.move(); + this.move(this.nextMove); } @@ -125,4 +127,21 @@ public class MovingRobot extends Robot { private void moveLeft() { this.setX(this.getX() - 1); } + + public static void main(String[] args) { + System.out.println("=== Question 9 ==="); + MovingRobot r1 = new MovingRobot(0, 0); + MovingRobot r2 = new MovingRobot(9, 9); + while (!MovingRobot.sameSlot(r1, r2)) { + r1.move(); + r2.move(); + } + + System.out.println(String.format("Collision at: (%d, %d)", r1.getX(), r1.getY())); + System.out.println("R1 Route:"); + System.out.println(r1.printMoves()); + + System.out.println("R2 Route:"); + System.out.println(r2.printMoves()); + } } |
