Friday 21 April 2017

I used to write software... II

A long time ago, in a galaxy far, far away... well, 13 years ago and 150 miles away, but you get the idea... I learnt to translate my classic Visual Basic programming skills to VB.Net. The specific task of personal interest that I used to teach myself was solving sudoku puzzles, as these were just starting to gain popularity in the UK back then.

Here's what I wrote about my noddy sudoku solver (and generator) at the time:

I wrote [this] mainly as an exercise in codifying logic - could I code the way I solve sudoku? The answer, for the most part, was yes, and this will solve all but the most diabolically fiendish sudoku...

The object of sudoku is to fill a 9x9 grid so that every row, column and 3x3 box contains the digits 1 through 9. Sounds easy, can be very hard (and addictive)! Anyway, this application lets you keep track of your progress by storing the grid contents, and helps you by showing available values for each grid square. It'll even generate a near-endless supply of new puzzles! And yes, I am aware that if you choose to generate a really hard sudoku, you might end up with one of the few that this program cannot solve programmatically... For the most part though, if you get really stuck, there are 'Hint' and 'Solve' buttons that will help you out.

Again, I failed to finish this quite as I'd like, in so much as there are some sudoku that are too hard for it to solve, and it only supports 9x9 puzzles. Other than that, it's okay, I think. Whatever, I'm starting to mothball the old website this was previously publicly available on, so I'm making it available here instead, for posterity: its own little software cemetery.

Anyway, enough history. Here's the download if you actually want to give it a spin. To install: unzip the download (try 7-Zip in the unlikely event you need help with that), run the MSI, accept all the defaults. Job done.

Oh, and in the even more unlikely event that you use this enough to need support, well, you could ask in the comments below this post. If I can remember, I'll try to help. No promises, mind.

No comments:

Post a Comment