ATOMS : Sudoku details
Dear visitors/customers, we are migrating most of Scilab services into a new data center.
Note that login/registration will not be available for the moment.

# Sudoku

Solve sudoku puzzles
Details
Version
0.1.1
Author
Michael Baudin
Owner Organization
DIGITEO
Maintainer
Michael Baudin
Category
Creation Date
October 2, 2012
Source created on
Scilab 5.4.x
Binaries available on
Scilab 5.4.x:
Windows 64-bit Windows 32-bit Linux 64-bit Linux 32-bit MacOSX
Scilab 5.5.x:
Windows 64-bit Windows 32-bit Linux 64-bit Linux 32-bit MacOSX
Install command
`--> atomsInstall("sudoku")`
Report a bug
Description
```            The goal of this toolbox is to provide algorithms to solve sudoku puzzles.

We provide algorithms to solve sudokus:

* solving Sudoku Using Recursive Backtracking.
* solving sudoku with a combination of necessary entries, single candidates and
recursive guesses.

We provide 2 specific algorithms to fill a sudoku:

* fill it by necessary entries,
* fill single candidates.

We provide 3 algorithms to generate sudokus.
The toolbox allows to randomly permute the rows of a sudoku or
to order it into a canonical form.
We provide an algorithm to fill a random sudoku and to delete random
entries inside it.
We can see if a sudoku is solved and compute candidates for
each entry.

Features
--------

Algorithms
* sudoku_candidatefind — Find a candidate in the sudoku.
* sudoku_candidateprint — Find and print a candidate in the sudoku.
* sudoku_candidateremove — Remove a candidate.
* sudoku_candidates — Returns candidates for a sudoku X.
* sudoku_candidatescell — Returns candidates for a cell in a sudoku.
* sudoku_candidatesmerge — Merge candidates in the row, column or block.
* sudoku_cellcandidates — Returns candidates for a cell in a sudoku.
* sudoku_confirmcell — Confirm the value of a cell.
* sudoku_findhiddensubset — Find naked subsets of given length.
* sudoku_findlocked — Search for locked candidates.
* sudoku_findnakedsubset — Find naked subsets of given length.
* sudoku_findtwocolors — Search for pairs.
* sudoku_findxcycle — Search for pairs.
* sudoku_findxwing — Find X-Wings.
* sudoku_iscandsingle — See if a candidate is single.
* sudoku_islatin — Check if a matrix is a Latin Square.
* sudoku_issolved — See if the sudoku is solved.
* sudoku_locatenakedsubset — Find naked subsets of given length and returns
the associated rows and columns.
* sudoku_visiblefrom — Compute the cells visible from cell a.
* sudoku_visiblefrom2 — Compute the cells visible from both cell a and b.

Generate
* sudoku_create — Generate a puzzle and its solution.
* sudoku_delrandom — Deletes entries at random in a sudoku.
* sudoku_fillrandom — Generate a random sudoku.
* sudoku_generate — Generate a puzzle and its solution.
* sudoku_generate2 — Generate a puzzle and its solution.
* sudoku_generate3 — Generate a puzzle and its solution.
* sudoku_rootsolution — Returns the root solution.

* sudoku_print — Print a sudoku.
* sudoku_readgivens — Read a sudoku from a string of 81 givens.
* sudoku_readsdmnb — Returns the number of sudoku in a .sdm file.
* sudoku_writegivens — Returns the given sudoku as a string of 81 givens.
* sudoku_writesdk — Returns the given sudoku as a sdk string.
* sudoku_writess — Returns the given sudoku as a Simple Sudoku format.

Solve
* sudoku_solve — Solves Sudoku.
* sudoku_solveai — Solves Sudoku.
* sudoku_solvebylogic — Solves Sudoku.
* sudoku_solverecursive — Solves Sudoku using naked singles and recursive
backtracking.
* sudoku_solvesa — Solves Sudoku.

Utilities
* sudoku_latinsquare — Create Latin Squares of order n.
* sudoku_order — Order a sudoku.
* sudoku_permute — Permute a sudoku.

Authors
-------
* Stefan Bleeck, 2005
* Cleve Moler, 2009
* Michael Baudin, 2010

```
Files (3)
[427.37 kB]
Source code archive
```makes it available for Scilab 5.4
```
[770.98 kB]
OS-independent binary for Scilab 5.4.x
```Binary version
Automatically generated by the ATOMS compilation chain

```
[734.72 kB]
OS-independent binary for Scilab 5.5.x
```Binary version (all platforms)
Automatically generated by the ATOMS compilation chain

```
News (0)