コード例 #1
0
ファイル: Program.cs プロジェクト: wasd125/sudokuBoy
        static void Main(string[] args)
        {
            var spielfeld = new SudokuSpielfeld();

            var zahlen = new int[, ]
            {
                { 0, 0, 0, 2, 0, 6, 0, 0, 0 },
                { 0, 0, 1, 0, 9, 0, 8, 0, 0 },
                { 0, 8, 0, 1, 4, 5, 0, 3, 0 },
                { 8, 0, 3, 0, 0, 0, 5, 0, 4 },
                { 0, 1, 9, 0, 0, 0, 6, 2, 0 },
                { 4, 0, 7, 0, 0, 0, 1, 0, 9 },
                { 0, 5, 0, 7, 3, 1, 0, 4, 0 },
                { 0, 0, 4, 0, 6, 0, 7, 0, 0 },
                { 0, 0, 0, 4, 0, 2, 0, 0, 0 }
            };

            spielfeld.SetzeZahlen(zahlen);

            spielfeld.Loesen();
            Console.ReadKey();
        }
コード例 #2
0
ファイル: SudokuSpielfeld.cs プロジェクト: wasd125/sudokuBoy
        private void LoeseRekursiv()
        {
            var zellen = GetZellenNachAnzahlWerten();

            foreach (var zelle in zellen)
            {
                foreach (var wert in zelle.MoeglicheWerte)
                {
                    var spielfeldKopie = new SudokuSpielfeld(this);
                    spielfeldKopie.SetzeZahl(zelle.PositionX, zelle.PositionY, wert);
                    _geloest = spielfeldKopie.Loesen();

                    if (_geloest)
                    {
                        Console.WriteLine("");
                        Console.WriteLine("Gelöstes Sudoku:");
                        _ui.ZeicheGrid(spielfeldKopie);
                        _geloest = true;
                        return;
                    }
                }
            }
        }