-
Notifications
You must be signed in to change notification settings - Fork 0
/
Program.cs
113 lines (99 loc) · 3.81 KB
/
Program.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
using System;
using System.Collections.Generic;
using System.Linq;
namespace Sudoku
{
class Program
{
private static Random _rnd = new Random();
private static List<char[,]> sudokuGrids = new List<char[,]>(){
new char[,]
{
{'5','1','.','.','.','.','.','8','3' },
{'8','.','.','4','1','6','.','.','5' },
{'.','.','.','.','.','.','.','.','.' },
{'.','9','8','5','.','4','6','1','.' },
{'.','.','.','9','.','1','.','.','.' },
{'.','6','4','2','.','3','5','7','.' },
{'.','.','.','.','.','.','.','.','.' },
{'6','.','.','1','5','7','.','.','4' },
{'7','8','.','.','.','.','.','9','6' }
},
new char[,]
{
{'7','.','.','.','9','.','.','.','3'},
{'2','.','.','4','6','8','.','.','1'},
{'.','.','8','.','.','.','6','.','.'},
{'.','4','.','.','2','.','.','9','.'},
{'.','.','.','3','.','4','.','.','.'},
{'.','8','.','.','1','.','.','3','.'},
{'.','.','9','.','.','.','7','.','.'},
{'5','.','.','1','4','2','.','.','6'},
{'8','.','.','.','5','.','.','.','2'}},
new char[,]
{
{'.','5','2','3','.','.','6','.','.'},
{'6','.','.','.','4','.','.','.','3'},
{'.','.','.','.','.','.','.','.','.'},
{'.','.','.','6','3','.','.','1','.'},
{'4','7','.','.','.','.','.','3','5'},
{'.','2','.','.','5','8','.','.','.'},
{'.','.','.','.','.','.','.','.','.'},
{'1','.','.','.','9','.','.','.','6'},
{'.','.','5','.','.','1','7','2','.'}},
new char[,]
{
{'5','.','.','.','.','.','1','.','7'},
{'.','.','4','3','.','.','5','.','.'},
{'.','.','.','2','.','.','.','8','.'},
{'.','9','.','4','.','2','.','.','.'},
{'4','.','.','.','.','.','.','.','6'},
{'.','.','.','1','.','3','.','5','.'},
{'.','8','.','.','.','4','.','.','.'},
{'.','.','2','.','.','6','7','.','.'},
{'3','.','9','.','.','.','.','.','1'}}
};
private static char[,] emptyGrid = new char[,]
{
{'.','.','.','.','.','.','.','.','.' },
{'.','.','.','.','.','.','.','.','.' },
{'.','.','.','.','.','.','.','.','.' },
{'.','.','.','.','.','.','.','.','.' },
{'.','.','.','.','.','.','.','.','.' },
{'.','.','.','.','.','.','.','.','.' },
{'.','.','.','.','.','.','.','.','.' },
{'.','.','.','.','.','.','.','.','.' },
{'.','.','.','.','.','.','.','.','.' }
};
static void Main(string[] args)
{
int userInput;
do
{
userInput = UI.ShowMainMenu();
if (userInput == 1)
{
var grid = FileHandler.GetSudokuGrid();
if(grid.GetLength(0)==9 && grid.GetLength(0) == 9)
{
Game.puzzleSolver(grid);
}
else
{
UI.ShowMsg("Not a valid SUDOKU file, Please check the content and try again! Look below for a valid SODOKU file format");
UI.ShowValidSudokuFormat();
}
}
if (userInput == 2)
{
int randNum = _rnd.Next(0, 4);
Game.puzzleSolver(sudokuGrids[randNum]);
}
if (userInput == 3)
{
Game.createSudokuGrid(emptyGrid);
}
} while (userInput != 4);
}
}
}