Originally Posted by

**MK27**
You have to distinguish between the *mechanics/logic* of the game and the *presentation* of the game. The presentation could involve an ncurses interface, a GUI, a web interface, it could be done with a special 3D projector, etc. etc. This is __totally and completely irrelevant__ to the logic of the game. The presentation requires a working logic engine/model, but that engine does not require any presentation to work. In other words, you must first determine how you are going to model the logic of the game, without thinking about it's presentation.

For example, part of the model underlying a tic tac toe game might be a 3x3 matrix. Also, there are two players, who alternately input a move into the model, a position in the matrix. Part of the logic of the model is that after each move, it must be determined if there are three X's or O's lined up in the matrix, or if that is no longer possible, in which case the game is over.

That does not require any presentation (except, of course, without presentation, no one can play the game). I mention this because it is not clear whether the purpose of your assignment is:

A) to produce a playable game,

B) to determine whether a randomly generated board is solvable,

C) both A and B.

If it is B, then the only presentation you have to do is draw the board once, and state whether it can be solved or not. You don't have to input moves, drag an asterisk around, etc. This is important because **implementing gameplay is an unnecessary distraction** WRT whether the board is solvable or not. Ie, if the task is B, you are wasting your time thinking about things (A) that do not matter.

If the the task is C, **you have to decide whether to tackle A first, or B first. Choose one**, and forget about the other until the first part is done.

Make sense?