2010 Grid Checker
<< 2010Trail | APQuestionsTrailIndex | 2009NumberCube >>
GridChecker.java
import info.gridworld.actor.*; import info.gridworld.grid.*; import java.util.ArrayList; import java.util.List; public class GridChecker { private BoundedGrid<Actor> gr; public GridChecker(BoundedGrid gr) { this.gr=gr; } public Actor actorWithMostNeighbors() { // part (a) return null; } public List<Location> getOccupiedWithinTwo(Location loc) { //part (b) return null; } }
The next 4 are for Checking your answer to part (a)
GridCheckerTester1.java
import info.gridworld.actor.*; import info.gridworld.grid.*; import java.awt.Color; public class GridCheckerTester1 { public static void main(String[] args) { ActorWorld world = new ActorWorld(); Rock r=new Rock(); world.add(new Location(2, 1), r); world.add(new Location(2, 3), new Rock()); world.add(new Location(2, 2), new Bug()); world.show(); GridChecker gc=new GridChecker((BoundedGrid)world.getGrid()); System.out.println("Actor with most should be Bug at 2,2:"+gc.actorWithMostNeighbors() ); } }
GridCheckerTester2.java
import info.gridworld.actor.*; import info.gridworld.grid.*; import java.awt.Color; public class GridCheckerTester2 { public static void main(String[] args) { ActorWorld world = new ActorWorld(); Rock r=new Rock(); world.add(new Location(1, 1), r); world.add(new Location(2, 4), new Rock()); world.add(new Location(2, 2), new Bug()); world.add(new Location(2, 1), new Critter()); world.show(); GridChecker gc=new GridChecker((BoundedGrid)world.getGrid()); System.out.println("Actor with most should be Rock at 1,1:"+gc.actorWithMostNeighbors() ); } }
GridCheckerTester3.java
import info.gridworld.actor.*; import info.gridworld.grid.*; import java.awt.Color; public class GridCheckerTester3 { public static void main(String[] args) { ActorWorld world = new ActorWorld(); Flower f=new Flower(); world.add(new Location(1, 1), f); world.add(new Location(2, 3), new Bug()); world.show(); GridChecker gc=new GridChecker((BoundedGrid)world.getGrid()); System.out.println("Actor with most could be the Flower at 1,1 or the Bug at 2,3:"+gc.actorWithMostNeighbors() ); } }
GridCheckerTester4.java
import info.gridworld.actor.*; import info.gridworld.grid.*; import java.awt.Color; public class GridCheckerTester4 { public static void main(String[] args) { ActorWorld world = new ActorWorld(); world.show(); GridChecker gc=new GridChecker((BoundedGrid)world.getGrid()); System.out.println("No Actors, so actorWithMost Neighbors shuld be null:"+gc.actorWithMostNeighbors() ); } }
the next two are for testing your answer to part (b):
GridCheckerTester5.java
import info.gridworld.actor.*; import info.gridworld.grid.*; import java.awt.Color; public class GridCheckerTester5 { public static void main(String[] args) { ActorWorld world = new ActorWorld(); world.add(new Location(1, 1), new Rock()); world.add(new Location(2, 3), new Bug()); world.show(); GridChecker gc=new GridChecker((BoundedGrid)world.getGrid()); System.out.println("The list of occupied locations within 4,3 should be the location of the Bug at 2,3 only:\n"+gc.getOccupiedWithinTwo(new Location(4,3)) ); } }
GridCheckerTester6.java
import info.gridworld.actor.*; import info.gridworld.grid.*; import java.awt.Color; public class GridCheckerTester6 { public static void main(String[] args) { ActorWorld world = new ActorWorld(); world.add(new Location(0, 0), new Rock()); world.add(new Location(3, 3), new Rock()); world.add(new Location(3, 2), new Bug()); world.add(new Location(5, 4), new Critter()); world.add(new Location(5, 6), new Critter()); world.show(); GridChecker gc=new GridChecker((BoundedGrid)world.getGrid()); System.out.println("The list of occupied locations within 1,1 should be [(0, 0), (3, 2), (3, 3)] :\n"+gc.getOccupiedWithinTwo(new Location(1,1)) ); System.out.println("The list of occupied locations within 0,0 should be an empty list :\n"+gc.getOccupiedWithinTwo(new Location(0,0)) ); System.out.println("The list of occupied locations within 3,3 should be [(3, 2), (5, 4)] :\n"+gc.getOccupiedWithinTwo(new Location(3,3)) ); System.out.println("The list of occupied locations within 5,4 should be [(3, 2), (3, 3), (5,6)] :\n"+gc.getOccupiedWithinTwo(new Location(5,4)) ); System.out.println("The list of occupied locations within 5,6 should be [(5, 4)] :\n"+gc.getOccupiedWithinTwo(new Location(5,6)) ); } }