For this lab, the main thing to check is that it solves the problem. -------------------------------------------------------------- Functionality: 60 points -------------------------------------------------------------- divide this into 20 points for interface, and 40 points for the solver. Download a few boards (or collect all boards submitted with the labs by students) and check to see that they are solved correctly. depending on how far the solver gets, subtract points. The format for the file should be documented in their program. In class I told them to use 'x' for spaces, so a board would look like this: 1 x x 5 x x 7 x 9 x x 2 x x 3 x x x ... Give full points for a nice and properly working interface, and subtract as appropriate depending on gravity of error. -------------------------------------------------------------- Style, easiness, simplicity, clarity: 40 points -------------------------------------------------------------- - the format of the input file should be documented in the header 2 points - the name of the file should be taken as parameter (maybe on the command line, or entered through some GUI). in any case you should not have to edit the file and recompile. 2 points - the structure of the program should be as described in the lab: there shoudl be 3 classes: Board, Move, and the Controller (main) class. Board class should provide nextMove(), moveOK() and isDone (), and the solver should be in the main class. - comments, especially above functions. i am not looking for exhaustive comments, just a sign that the habit is there. some minimal attempt of commenting. - as you grade you get a feel for how clear and easy is the code.