public static void AddNumNodeNull(int row, int col) { NumBlockFix.Clear(); int x = HandleSudoku.NumStart(row); int y = HandleSudoku.NumStart(col); for (int i = x; i < x + 3; i++) { for (int j = y; j < y + 3; j++) { if (HandleSudoku.BoardCheck[i, j] != 0) { NumBlockFix.Add(HandleSudoku.BoardCheck[i, j]); } } } int VNum = 0; do { Random random = new Random(); VNum = random.Next(1, 10); for (int i = 0; i < NumBlockFix.Count; i++) { if (NumBlockFix[i] == VNum) { VNum = 0; } } } while (VNum == 0); NumBlockFix.Add(VNum); HandleSudoku.BoardCheck[row, col] = VNum; }
// tô màu các toa dộ dòng cọ bị block public static void LoadBlockRCB(int[,] Board, int Num) { BoxBlock.Clear(); RowBlock.Clear(); ColBlock.Clear(); for (int i = 0; i < 9; i++) { for (int j = 0; j < 9; j++) { if (Board[i, j] == Num) { RowBlock.Add(i); ColBlock.Add(j); BoxBlock.Add(new Point(HandleSudoku.NumStart(i), HandleSudoku.NumStart(j))); } } } }