Skip to content

Latest commit

 

History

History
97 lines (61 loc) · 2.31 KB

README.md

File metadata and controls

97 lines (61 loc) · 2.31 KB

Sudoku Solver with GUI

A Sudoku solver with a graphical user interface (GUI) that allows users to input Sudoku puzzles, solve them, display the results, and reset the puzzle. The application also checks the validity of user input.

Table of Contents

[TOC]

Features

  • Enter Sudoku puzzles
  • Solve Sudoku puzzles
  • Display the solution
  • Reset the puzzle
  • Validate user input

Technologies

  • Python 3
  • GUI: Tkinter
  • Sudoku solving algorithm: Backtracking

Module Structure

  • Main interface: Displays the Sudoku grid, allows input of the puzzle and displays the result
  • Solver module: Implements the Sudoku solving algorithm
  • Input validation: Checks the validity of user input
  • Reset functionality: Clears input and results

Installation

  1. Install Python 3.x: Download Python
  2. Clone this repository:
git clone https://github.com/amazing-fish/sudoku-solver-gui.git
  1. Install the required libraries:
pip install -r requirements.txt

Usage

  1. Run the Sudoku solver:
python main.py
  1. Enter the Sudoku puzzle in the GUI, and click the "Solve" button.
  2. View the solution in the GUI.
  3. Click the "Reset" button to clear the input and results.

Learning Resources

Tutorials

Learning Modules and Sequence

a. Python Basics

  • Data types (lists, dictionaries, tuples, etc.)
  • Control flow (if, for, while, etc.)
  • Functions and modules

b. Graphical User Interface (Tkinter)

  • Windows and layout
  • Widgets (buttons, labels, text boxes, etc.)
  • Event handling and binding

c. Sudoku Solving Algorithm (Backtracking)

  • Basic concepts and principles
  • Algorithm implementation and optimization

d. Input Validation

  • Data validity checking
  • Exception handling

Contributing

Contributions are welcome! Please read the contributing guidelines before submitting a pull request.

License

This project is licensed under the MIT License. See the LICENSE file for details.