@ 2013-08-09T17:44:42Z <?php
class SudokuSolver
{
protected $sudokuColumns;
public function __construct ($sudoku)
{
$this->sudokuColumns = $sudoku;
}
// could be static as well
public function printOut ($sudoku)
{
foreach ($sudoku as $column) {
foreach ($column as $cell) {
echo "|";
if (null !== $cell) {
echo $cell;
} else {
echo " ";
}
}
echo "|\n";
}
}
public function solve()
{
$this->checkConsistenz();
}
protected function checkConsistenz ()
{
$columns = $this->sudokuColumns;
// check rows -> own method
$rows = array();
foreach ($columns as $columnIndex => $column) {
foreach ($column as $rowIndex => $cell) {
$rows[$rowIndex][$columnIndex] = $cell;
}
//$this->printOut($rows);
}
foreach ($rows as $rowIndex => $row) {
$this->checkRow($rowIndex);
}
}
protected function checkRow ($rowIndex)
{
echo "checking $rowIndex..\n";
}
}
$sudoku = array();
$sudoku[] = array(null,3,null, null,null,null, null,null,null);
$sudoku[] = array(null,null,null, 1,9,5, null,null,null);
$sudoku[] = array(null,null,8, null,null,null, null,6,null);
$sudoku[] = array(8,null,null, null,6,null, null,null,null);
$sudoku[] = array(4,null,null, 8,null,null, null,null,1);
$sudoku[] = array(null,null,null ,null,2,null, null,null,null);
$sudoku[] = array(null,6,null, null,null,null, 2,8,null);
$sudoku[] = array(null,null,null, 4,1,9, null,null,5);
$sudoku[] = array(null,null,null, null,null,null, null,7,null);
$sudokuSolver = new SudokuSolver($sudoku);
$sudokuSolver->printOut($sudoku);
$sudokuSolver->solve($sudoku);
Enable javascript to submit You have javascript disabled. You will not be able to edit any code.
Output for 5.0.0 - 5.0.5 , 5.1.0 - 5.1.6 , 5.2.0 - 5.2.17 , 5.3.0 - 5.3.29 , 5.4.0 - 5.4.45 , 5.5.24 - 5.5.35 , 5.6.8 - 5.6.28 , 7.0.0 - 7.0.20 , 7.1.0 - 7.1.25 , 7.2.0 - 7.2.33 , 7.3.0 - 7.3.33 , 7.4.0 - 7.4.33 , 8.0.0 - 8.0.30 , 8.1.0 - 8.1.28 , 8.2.0 - 8.2.18 , 8.3.0 - 8.3.6 | |3| | | | | | | |
| | | |1|9|5| | | |
| | |8| | | | |6| |
|8| | | |6| | | | |
|4| | |8| | | | |1|
| | | | |2| | | | |
| |6| | | | |2|8| |
| | | |4|1|9| | |5|
| | | | | | | |7| |
checking 0..
checking 1..
checking 2..
checking 3..
checking 4..
checking 5..
checking 6..
checking 7..
checking 8..
Output for 4.4.2 - 4.4.9 Parse error: syntax error, unexpected T_STRING, expecting T_OLD_FUNCTION or T_FUNCTION or T_VAR or '}' in /in/PWQ8i on line 5
Process exited with code 255 . Output for 4.3.0 - 4.3.1 , 4.3.5 - 4.3.11 , 4.4.0 - 4.4.1 Parse error: parse error, unexpected T_STRING, expecting T_OLD_FUNCTION or T_FUNCTION or T_VAR or '}' in /in/PWQ8i on line 5
Process exited with code 255 . Output for 4.3.2 - 4.3.4 Parse error: parse error, expecting `T_OLD_FUNCTION' or `T_FUNCTION' or `T_VAR' or `'}'' in /in/PWQ8i on line 5
Process exited with code 255 . preferences:dark mode live preview
201.69 ms | 401 KiB | 328 Q