Example #1
0
        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;
        }
Example #2
0
 // 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)));
             }
         }
     }
 }