NQueen Puzzle Solver - 2 |
.1);">. |
. |
Version - 131124Sun |
. |
|
. |
I learned playing Chess from my father, in my childhood, on chessboard
which my father won in some competition in AJK. All my siblings learned playing
chess from our father and we often used to play chess with each other. As we
grew playing chess with each other on that chessboard, chessboard and it’s
chess-pieces started showing signs of decay because of it’s age and use. |
. |
So I put that chessboard in safe place to make sure chessboard did not get
damaged any further and remain with us for next generations. For playing chess I
bought a new chessboard and chess-pieces set. After doing so some decades ago I
started trying to make computer game for Chess also. |
. |
During online research for making computer chess game I came across many
chess puzzles like "N Queen Puzzle" and "Knight tour" etc. A few years earlier
than that online research I had also read about these types of puzzles in books
on AI programming (prolog, lisp) in "Liaquat Memorial Library - Karachi". |
. |
These chess puzzles inspired me to make my own application for solving
them on computer. I kept making them using different softwares. First time I
made “N Queen” and “Knight tour” puzzle solving software in HTML/JavaScript and
last time in C# (In between attempts I no longer remember).
|
. |
This post is about an application "N Queen - 2". I made this application
in year 2013 in c# for solving N-Queen Puzzle using computer. This application
can solve N-Queen puzzles from 4*4 to 30*30 size chessboards. Optionally it can
save results in file also. |
. |
[ N Queen puzzle (definition) ] |
The N queens puzzle is the Puzzle of placing N chess queens on an NxN
chessboard so that no two queens threaten/attack each other; thus, a solution
requires that no two queens share the same row, column, or diagonal. |
. |
[ Application's UI and Working: ] |
Application's user interface and how to use it is explained in the following.
|
- user have to select chessboard side size on which depends how many Queens to place on chessboard. Count of Queens is equal to size of chessboard side.
- User also have to select whether to find first solution only or to find all solutions.
- User also have to select whether to save result to file or not.
- If save to file selected than use also have to select folder where results will be saved.
- Calculation is started by clicking Start button.
- Calculation is canceled by clicking Cancel button.
- Running results are displayed in Output form.
- Current status is displayed in status line.
- Application log is displayed in Combo-box.
|
|
Following are the screen shots of 'N Queen - 2' application
with explanation.
|
. |
|
. |
[ Application is loaded ] |
Application looks like in the following photo when loaded. |
. |
|
. |
. |
|
. |
[ Application's Menu/Help menu expanded ] |
Application's Menu/Help menu looks like this. It has options for displaying
differentc infomations about application. |
. |
|
. |
. |
|
. |
[ Application's Menu/Help/About form is displayed ] |
Application's Help/About form is displayed. It displays basic information about
application. |
. |
|
. |
. |
|
. |
[ Application's Menu/Help/How-to-Use form is displayed ] |
Application's Menu/Help/How-to-Use form is displayed. It displays information about
application's UI nnd how to use it. |
. |
|
. |
. |
|
. |
[ Application's Menu/Help/Copyright form is displayed ] |
Application's
Menu/Help/Copyright form is displayed. It displays basic Copyright notice about
application. |
. |
|
. |
. |
|
. |
[ Chessboard size option expanded ] |
Application looks like this when Chessboard size option is expanded. |
. |
|
. |
. |
|
. |
[ Chessboard size selected ] |
Application looks like this after Chessboard size option is selected. |
. |
|
. |
. |
|
. |
[ Browseing for output folder ] |
Application looks like this when it's "Save solution to file" option is
checked and "Choose folder for saving solutions" clicked. |
. |
|
. |
. |
|
. |
[ Output folder selected/Created ] |
Application
looks like this when output folder is either selected or created. |
. |
|
. |
. |
|
. |
[ Start button clicked ] |
[ Process started ] |
Application looks like this when 'Start' button is clicked and application
starts finding solutions.form. |
. |
|
. |
. |
|
. |
. |
|
. |
. |
|
. |
[ Saving solutions to file ] |
Application looks like this during saving found solutions to file in selected/created folder. |
. |
|
. |
. |
|
. |
[ Process Completed ] |
Application looks like this when Job is completed.
All solutions are found and optionally all solutions are saved to file. |
. |
|
. |
. |
|
. |
[ Process Completed (ready) ] |
Application looks like this
when Job is completed and application is ready for new Job. |
. |
|
. |
. |
|
. |
[ Cancel button clicked ] |
Application looks like this when 'Cancel' button is clicked.
On doing so application stops doing it's job and displays related messages. |
. |
|
. |
. |
|
. |
[ Log combo-box expanded ] |
Application looks like this
when application completes it's job successfully/un-successfully and log
combo-box is expanded. |
. |
|
. |
. |
|
. |
[ N-Queen puzzle solutions for 8x8 board ] |
This application solves N Queen puzzle for selected chessboard size and
optionaly saves solutions to file in selected/created folder. Following is the
content of a N Queen puzzle solution file when chessboard size was 8x8 and all
solutions were required. |
. |
|
. |
. |
|
. |
Colors used for Border and Background of this post |
Color |
HSL |
RGB |
Hex |
|
93, 51%, 40% |
97, 154, 50 |
#619a32 |
|
93, 53%, 81% |
204, 232, 181 |
#cce8b5 |
|
. |
|
. |
Enjoy
Complete Source code of application written
and compiled in visual studio 2010 Ultimate by
me.
Download it. Extract it. Read 'ReadMeFirst.txt' file and do as is explained in
it.
|
. |
|
. |
If there are any mistakes in this post then I will remove them whenever I will know about them. |
. |
No comments:
Post a Comment