Inspiration
I wanted to create a project that combines logic, algorithms, and interactive web design. Sudoku is a classic puzzle that challenges problem-solving skills, so I decided to build a Sudoku game with a solver to demonstrate both gameplay and algorithmic efficiency.
What it does
Sudoku Solver & Game lets users play Sudoku with a 9x9 grid, enter numbers manually, and check their solution. It also features a timer, difficulty level, input validation, and an automatic solver to show the correct solution if needed.
How we built it
How we built it Frontend: HTML and CSS to create a responsive, user-friendly Sudoku grid and interface. Logic & Interactivity: JavaScript handles puzzle generation, input validation, timer, and button events. Algorithms: Backtracking-based solver generates the solution and validates the user input. Features: Timer counts down from 5 minutes, puzzle resets, and a “Solve” button displays the solution.
Challenges we ran into
Ensuring the puzzle generates unique and valid Sudoku solutions. Handling input validation so users can only enter numbers 1-9. Managing the timer and user interactions, including showing alerts when time is up or solution is incorrect.
Accomplishments that we're proud of
Successfully implemented a fully playable Sudoku game with an automatic solver. Created a clean, visually appealing interface with interactive features like timer and validation. Developed an educational tool that demonstrates algorithmic problem-solving in a fun way.
What we learned
Implementing backtracking algorithms for puzzle solving. Creating dynamic and interactive web pages using JavaScript. Combining UI design with logic to make an intuitive and functional application.
What's next for Sudoku Solver & Game
Add multiple difficulty levels and hints to enhance gameplay. Implement a leaderboard to track high scores and completion times. Deploy the game online so anyone can play it from their browser.
Built With
- browser
- css
- github
- html
- javascript
- web
Log in or sign up for Devpost to join the conversation.