Solver a generátor sudoku, implementovaný do aplikace pro všechny nadšence sudoku
- Ukázka: screenshoty
- Download: aktuální release zde
- Dokumentace: popis algoritmů (pdf), programátorská dokumentace (pdf), manuál (html)
- Repozitář: karlosss/sudoku + fork v archivu maturitních prací
- Autor: Karel Jílek
- Maturitní práce 2014/15 na GJK
Aplikace, která dokáže vyřešit uživatelem zadané sudoku, poradit mu při řešení, nebo vygeneruje úplně nové a změří řešiteli čas.
Intuitivní ovládání vás (snad) dovede k cíli :). Kdyby ne, v aplikaci je odkaz na manuál.
Další informace zde.
- Na Linuxu nainstalovat balíčky "pyqt4-common", "python2-pyqt4" a "python2"
- Na Windows nainstalovat Python zde a PyQt dle návodu zde
Pythonem spustit SuSol.py
Algoritmy pro solver a generátor jsou poměrně variabilní, stačí pouze dodržet formu, kdy na vstup jde matice 9x9 představující sudoku (0 je prázdné políčko) a na výstup jde totožný datový typ stejného rozměru.
Implementované funkce jsou zdokumentovány zde.
Zdrojové kódy (soubory.py) se dají otevřít ve vhodném IDE (osobně používám PyCharm) a editovat. Doporučuji zasahovat pouze do souborů "solver2.py" a "generator.py", ostatní jsou poměrně komplikované a hrozí nevratné narušení funkčnosti (mně už se to stalo, naštěstí máme git :) ). Vše se potom musí interpretovat Pythonem 2.x.
Kód je rozdělený na solver, generátor a všechno ostatní (GUI, databáze a některé banální algoritmy dohromady - typicky například kontrola chyb v sudoku); některé funkce GUI jsou zvlášť v souboru misc.py
Další informace zde.
Řešení sudoku s použití podbarvování