コード例 #1
0
ファイル: Program.cs プロジェクト: najmi-smile/SudokuSolver
        static void Main(string[] args)
        {
            try
            {
                SudokuMapper            sudokuMapper            = new SudokuMapper();
                SudokuBoardStateManager sudokuBoardStateManager = new SudokuBoardStateManager();
                SudokuSolverEngine      sudokuSolverEngine      = new SudokuSolverEngine(sudokuBoardStateManager, sudokuMapper);
                SudokuFileReader        sudokuFileReader        = new SudokuFileReader();
                SudokuBoardDisplayer    sudokuBoardDisplayer    = new SudokuBoardDisplayer();

                WriteLine("Please Enter the filename containing Sudoku Puzzle:\t");
                var filename = ReadLine();

                var sudokuBoard = sudokuFileReader.ReadFile(filename);
                sudokuBoardDisplayer.Display("initial State", sudokuBoard);

                bool isSudokuSolved = sudokuSolverEngine.Solve(sudokuBoard);
                sudokuBoardDisplayer.Display("Final State", sudokuBoard);

                WriteLine(isSudokuSolved
                    ? "You have successfully solved the puzzle"
                    : "Your strategies are not intelegent enough to solve the sukodu puzzle ....");
            }
            catch (Exception ex)
            {
                WriteLine($"Sudoku puzzle cannot be solved as there is the problem \n{ex.Message}");
            }
        }
コード例 #2
0
ファイル: Program.cs プロジェクト: KafaloAlex/Sudoku-Solver
        static void Main(string[] args)
        {
            try
            {
                var sudokuMapper   = new SudokuMapper();
                var sbStateManager = new StateManager();
                var sbSolverEngine = new SolverEngine(sbStateManager, sudokuMapper);
                var sbFileReader   = new SudokuFileReader();
                var sbDisplayer    = new SudokuBoardDisplayer();

                Console.Write("Entrez le nom du fichier .txt contenant le puzzle Sudoku : ");
                var filename = Console.ReadLine();

                var sudokuBoard = sbFileReader.ReadFile(filename);
                sbDisplayer.Display("Puzzle Initial", sudokuBoard);

                bool isSolved = sbSolverEngine.Solve(sudokuBoard);
                sbDisplayer.Display("Puzzle résolu", sudokuBoard);

                Console.WriteLine(isSolved ? "Great !!! Resolve Successful" : "Un nain le mouvement est mal hard");
            }
            catch (Exception e)
            {
                Console.WriteLine("{0} : {1}", "Erreur Bro : ", e.Message);
            }
        }
コード例 #3
0
ファイル: Program.cs プロジェクト: deepjain73/SudokuSolver
        static void Main(string[] args)
        {
            try
            {
                SudokuMapper            sudokuMapper            = new SudokuMapper();
                SudokuBoardStateManager sudokuBoardStateManager = new SudokuBoardStateManager();
                SudokuSolverEngine      sudokuSolverEngine      = new SudokuSolverEngine(sudokuBoardStateManager, sudokuMapper);
                SudokuFileReader        sudokuFileReader        = new SudokuFileReader();
                SudokuBoardDisplayer    sudokuBoardDisplayer    = new SudokuBoardDisplayer();

                Console.WriteLine("Please enter the filename containing the sudoku puzzle:");
                var filename = Console.ReadLine();

                var sudokuBoard = sudokuFileReader.ReadFile(filename);
                sudokuBoardDisplayer.Display("Initial State", sudokuBoard);

                bool isSudokuSolved = sudokuSolverEngine.Solve(sudokuBoard);
                sudokuBoardDisplayer.Display("Final State", sudokuBoard);

                Console.WriteLine(isSudokuSolved ? "You have successfully solved this sudoku puzzle!" : "unfortunately, current algorithm(s) were not enough to solve the current sudoku puzzle!");
            }

            catch (Exception ex)
            {
                // In real world we would want to log this message
                Console.WriteLine("{0} : {1}", "Sudoku Puzzle cannot be solved because there was an error:", ex.Message);
            }
        }
コード例 #4
0
        static void Main(string[] args)
        {
            try
            {
                SudokuMapper            sudokuMapper            = new SudokuMapper();
                SudokuBoardStateManager sudokuBoardStateManager = new SudokuBoardStateManager();
                SudokuSolverEngine      sudokuSolverEngine      = new SudokuSolverEngine(sudokuBoardStateManager, sudokuMapper);
                SudokuFileReader        sudokuFileReader        = new SudokuFileReader();
                SudokuBoardDisplayer    sudokuBoardDisplayer    = new SudokuBoardDisplayer();

                Console.WriteLine("Enter the Filename for Sudoku puzzle");
                var fileName = Console.ReadLine();

                var sudokuBoard = sudokuFileReader.ReadSudokuFile(fileName);
                sudokuBoardDisplayer.Display("Initial State", sudokuBoard);

                bool isSudokuSolved = sudokuSolverEngine.Solve(sudokuBoard);
                sudokuBoardDisplayer.Display("Final State", sudokuBoard);

                Console.WriteLine(isSudokuSolved ?
                                  "Sudoku Puzzle Solved" : "Sudoku could not be solved");
            }
            catch (Exception ex)
            {
                Console.WriteLine("{0} {1}", "Sudoku puzzled cannot be solved because of an error", ex.Message);
            }
        }
コード例 #5
0
ファイル: Program.cs プロジェクト: Aedin-6/Sudoku-Solver
        static void Main(string[] args)
        {
            try
            {
                SudokuMapper            sudokuMapper            = new SudokuMapper();
                SudokuBoardStateManager sudokuBoardStateManager = new SudokuBoardStateManager();
                SudokuSolverEngine      sudokuSolverEngine      = new SudokuSolverEngine(sudokuBoardStateManager, sudokuMapper);
                SudokuFileReader        sudokuFileReader        = new SudokuFileReader();
                SudokuBoardDisplayer    sudokuBoardDisplayer    = new SudokuBoardDisplayer();

                Console.WriteLine("Please enter the filename with Sudoku Puzzle:");
                var filename = Console.ReadLine();

                var sudokuBoard = sudokuFileReader.ReadFile(filename);
                sudokuBoardDisplayer.Display("Initial State", sudokuBoard);

                bool isSudokuSolved = sudokuSolverEngine.Solve(sudokuBoard);
                sudokuBoardDisplayer.Display("Final State", sudokuBoard);

                Console.WriteLine(isSudokuSolved ? "You have succesfully this Sudoku Puzzle" : "Unable to solve that Sudoku now.");
            }
            catch (Exception ex)
            {
                Console.WriteLine("{0} : {1}", "Sudoku puzzle cannot be solved because of error", ex.Message);
            }
        }
コード例 #6
0
        static void Main(string[] args)
        {
            try
            {
                SudokuMapper            sudokuMapper            = new SudokuMapper();
                SudokuBoardStateManager sudokuBoardStateManager = new SudokuBoardStateManager();
                SudokuSolverEngine      sudokuSolverEngine      = new SudokuSolverEngine(sudokuBoardStateManager, sudokuMapper);
                SudokuFileReader        sudokuFileReader        = new SudokuFileReader();
                SudokuBoardDisplayer    sudokuBoardDisplayer    = new SudokuBoardDisplayer();

                Console.WriteLine("Please enter the filename containing the sudoku puzzle: ");
                var filename = Console.ReadLine();

                var sudokuBoard = sudokuFileReader.ReadFile(filename);
                sudokuBoardDisplayer.Display("Initial State", sudokuBoard);

                bool isSudokuSolved = sudokuSolverEngine.Solve(sudokuBoard);
                sudokuBoardDisplayer.Display("Final State", sudokuBoard);

                Console.WriteLine(isSudokuSolved
                    ? "You have successfully solved this sudoku puzzle!"
                    : "Unfortunately, the current algorithms weren't enough to solve the puzzle.");

                Console.WriteLine("Press any key to continue...");
                Console.ReadKey();
            }
            catch (Exception ex)
            {
                Console.WriteLine("{0} : {1}", "Sudoku puzzle cannot be solved becasue there was an error: ", ex.Message);
            }
        }
コード例 #7
0
        static void Main(string[] args)
        {
            //try
            //{
            SudokuMapper            sudokuMapper            = new SudokuMapper();
            SudokuBoardStateManager sudokuBoardStateManager = new SudokuBoardStateManager();
            SudokuSolverEngine      sudokuSolverEngine      = new SudokuSolverEngine(sudokuBoardStateManager, sudokuMapper);
            SudokuFileReader        sudokuFileReader        = new SudokuFileReader();
            SudokuBoardDisplayer    sudokuBoardDisplayer    = new SudokuBoardDisplayer();

            Console.WriteLine("Please enter the filename containing the Sudoku puzzle:");
            var fileName = Console.ReadLine();

            var sudokuBoard = sudokuFileReader.ReadFile(fileName);

            sudokuBoardDisplayer.Display("Initial state", sudokuBoard);

            bool isSudokuSolved = sudokuSolverEngine.Solve(sudokuBoard);

            sudokuBoardDisplayer.Display("Final state", sudokuBoard);

            Console.WriteLine(isSudokuSolved
                    ? "You have successfully solved this Sudoku puzzle!"
                    : "Unfortunately, the current algorithm(s) were not enough to solve the Sudoku puzzle...");
            //}
            //catch(Exception ex)
            //{
            //    Console.WriteLine($"Sudoku puzzle cannot be solved because there was an error: {ex.Message}");
            //}
        }
コード例 #8
0
        static void Main(string[] args)
        {
            try
            {
                SudokuMapper            sudokuMapper            = new SudokuMapper();
                SudokuBoardStateManager sudokuBoardStateManager = new SudokuBoardStateManager();
                SudokuSolverEngine      sudokuSolverEngine      = new SudokuSolverEngine(sudokuBoardStateManager, sudokuMapper);
                SudokuFileReader        sudokuFileReader        = new SudokuFileReader();
                SudokuBoardDisplayer    sudokuBoardDisplayer    = new SudokuBoardDisplayer();

                Console.WriteLine("Please enter the file name containing the sudoku puzzle");
                var fileName = Console.ReadLine();

                var sudokuBoard = sudokuFileReader.ReadFile(fileName);
                sudokuBoardDisplayer.Display("Initial state", sudokuBoard);

                bool isSudokuSolved = sudokuSolverEngine.Solve(sudokuBoard);
                sudokuBoardDisplayer.Display("Final state", sudokuBoard);

                Console.WriteLine(isSudokuSolved ? "You have successfully solved this Sudoku Puzzle" : "Current algorithm(s) were not enough to solve the current Sudoku Puzzle");
            }
            catch (Exception ex)
            {
                Console.WriteLine("Sudoku puzzle cannot be solved because there was an arror " + ex.Message);
            }
        }
コード例 #9
0
        static void Main(string[] args)
        {
            try
            {
                SudokuMapper            sudokuMapper            = new SudokuMapper();
                SudokuBoardStateManager sudokuBoardStateManager = new SudokuBoardStateManager();
                SudokuSolverEngine      sudokuSolverEngine      = new SudokuSolverEngine(sudokuBoardStateManager, sudokuMapper);
                SudokuFileReader        sudokuFileReader        = new SudokuFileReader();
                SudokuBoardDisplayer    sudokuBoardDisplayer    = new SudokuBoardDisplayer();

                Console.WriteLine("Please enter the filename containing the Sudoku Puzzle:");
                var userInput = Console.ReadLine();

                var filename = userInput + ".txt";



                var sudokuBoard = sudokuFileReader.ReadFile(filename);
                sudokuBoardDisplayer.Display("Inital State", sudokuBoard);

                bool isSudokuSolved = sudokuSolverEngine.Solve(sudokuBoard);
                sudokuBoardDisplayer.Display("Final State", sudokuBoard);

                Console.WriteLine(isSudokuSolved ?
                                  "You have successfully solved this Sudoku Puzzle!"
                    : "Unfortunatley, current algorithm(s) were not enough to solve the current Sudoku Puzzle!");

                Console.WriteLine("\n\n\n Press any key to exit");
                Console.ReadLine();
            }
            catch (Exception ex)
            {
                Console.WriteLine("{0} {1}", "Sudoku puzzle cannot be solved because there was an error:", ex.Message);

                Console.WriteLine("\n\n\n Press any key to exit");
                Console.ReadLine();
            }
        }
コード例 #10
0
        static void Main(string[] args)
        {
            try
            {
                var mapper            = new SudokuMapper();
                var boardStateManager = new SudokuBoardStateManager();
                var solverEngine      = new SudokuSolverEngine(mapper, boardStateManager);
                var fileReader        = new SudokuFileReader();
                var displayer         = new SudokuBoardDisplayer();
                Console.WriteLine("Please enter the filename containing the sudoku puzzle");
                var fileName = Console.ReadLine();

                var sudokuBoard = fileReader.ReadFile(fileName);
                displayer.Display("Initial State", sudokuBoard);
                var isSolved = solverEngine.Solve(sudokuBoard);
                displayer.Display("Final State", sudokuBoard);

                Console.WriteLine(isSolved ? "You have successfully solved the sudoku puzzle":"Unfortunately puzzle not solved");
            }
            catch (Exception e)
            {
                Console.WriteLine($"Sudoku puzzle cannot be solved because there was an error: {e.Message}");
            }
        }