Written in C++, can solve any sudoku puzzle. Uses straightforward logic to solve easy, medium, and hard problems. Uses backtracking to brute-force a solution once the logic fails.
Put your puzzle into a text file in this format:
x = unknown/empty square
x3xxxx4x2
x1xx8xxx7
2x963xxxx
64x9xx8xx
xxxxxxxxx
xx7xx8x41
xxxx936x4
5xxx1xx7x
1x3xxxx8x
Then, compile and run with the text file in the program arguments. (ex. ./a.out hard.txt)
Sample puzzles are included.