Goals for this assignment are to:
Read Chapter 2 before starting this assignment.
If you are not familiar with the game Minesweeper, you should play it a number of times to make sure you thoroughly understand the rules. Most computers have the game on them. Never begin designing or programming until you thoroughly understand the problem you are trying to solve.
An example of what is expected for this lab can be found on \\home\classes in the folder gorr\cs241Fa07\JarFiles. This version of MineSweeper is not fully implemented. You will complete the game in a later lab. You may choose to have an interface that is a little different from the example. However, be sure to include "set size", "debug" and level-of-difficulty capabilities.
Before you begin programming, draw the UML class diagram for the game. We will begin this in class.
Implement the Minesweeper game, except for the part where when you click in an empty cell, everything nearby that is empty is also turned over. We will come back to this in a later lab when we have talked about recursion.
Suggestions:
In the board class, represent the board state using a 2-d array of cells.
Create a Java Application rather than an Applet. The interface should be text written to a JTextArea within a JFrame.
Extra Credit (20%, i.e. 2 pts - extra): Implement the program using a gui type interface (i.e. where the user gets to click on squares to take a turn. Don't do this unless you are confident that you can finish on time.
By class time on Monday September 17, you should have completed the following:
No later than Thursday, Sept 20 you should have demonstrated the Minesweeper Program to the instructor If you can'tdo this during lab time, then you need to arrange another time to meet with the instructor.