Skip to content

A C# implementation of advanced sudoku solving techniques

License

Notifications You must be signed in to change notification settings

DRovara/SudokuSolver

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Contributors Forks Stargazers MIT License


Sudoku Solver



Report Bug · Request Feature

Table of Contents
  1. About The Project
  2. Getting Started
  3. Usage
  4. License
  5. Acknowledgments

About The Project

This is an implementation of some of the most widely required advanced sudoku solving techniques, such as X-Wings, Swordfish and others in C#. The project comes with a GUI that allows the import and manual input of soduoku puzzles and allows the user to specify which solving techniques may be used.

(back to top)

Built With

  • Microsoft .NET Framework 5.0

(back to top)

Getting Started

To get a local copy up and running follow these simple example steps.

Prerequisites

This project requires the installation of the .NET runtime environment. It can be downloaded from Microsoft's official website.

Installation

  1. Clone the repository
    git clone https://github.com/TheCodingDamian/SudokuSolver.git
  2. Run the pre-compiled binary from the path bin/SudokuSolver.exe OR Build the project yourself by opening it using Visual Studio.

Usage

After running the app, the GUI will be displayed.

Empty Grid

You can now use the GUI to manually edit the sudoku puzzle. Alternatively, you can press the "Import" button to import an existing sudoku puzzle from a file. THe format is a simple txt file consisting of nine lines with nine characters each, where each character is either a digit from one to nine, or an empty space if the puzzle is empty at that position.

Sample Sudoku

Once you have provided your sudoku puzzle to the solver, you can press the "Solve" button to run the solving procedure. After a short processing time, the resulting solution will be displayed. Should the solver determine the puzzle as unsolvable (i.e. no solution for this sudoku exists), a message window will pop up reporting the result. Should the solver be unable to find a solution, but also unable to prove that no solution exists, it will fill remaining spaces in the grid with pencil marks detailing all digits that may still be entered in each cell.

Solved Sudoku

Unsolved Sudoku

You may also modify the allowed sudoku techniques that the solver may use to solve the puzzle. You can simply do this by un-checking any of the techniques on the right before pressing "Solve".

(back to top)

License

Distributed under the MIT License. See LICENSE.txt for more information.

(back to top)

Acknowledgments

(back to top)

About

A C# implementation of advanced sudoku solving techniques

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages