예제 #1
0
        public void ChargerFichier(string pathFichier, bool verbeuxActif)
        {
            verbeux = verbeuxActif;
                try
                {

                    StreamReader lecteur = new StreamReader(pathFichier);

                    while (lecteur.Peek() > -1)
                    {
                        Grille unSudoku = null;

                        Console.WriteLine(lecteur.ReadLine());//---------------------------------------
                        string nomSud = lecteur.ReadLine();//Nom du sudoku
                        string dateSud = lecteur.ReadLine();//Date du Sudoku
                        string strClé = lecteur.ReadLine();//Récupération de la clé du Sudoku
                        int taille = strClé.Length;//Détermine les dimensions du Sudoku

                        unSudoku = new Grille(nomSud, dateSud, strClé);

                        mesages = unSudoku.afficherDétails();
                        Console.WriteLine(mesages);

                        for (int i = 0; i < taille; i++)
                        {
                            int j = 0;
                            foreach (char valeur in lecteur.ReadLine())
                            {
                                CaseSud newCase = new CaseSud(i, j++);

                                if (valeur == '.')
                                {
                                    newCase.addHypotheses(strClé);
                                }
                                else
                                    newCase.Valeur = valeur;

                                unSudoku.addCaseSud(newCase);
                            }
                        }

                        this.ListeGrilles.Add(unSudoku);

                    }
                    Console.Read();
                }
                catch (Exception)
                {

                    throw;
                }
        }
예제 #2
0
 public void addCaseSud(CaseSud caseS)
 {
     _tab[caseS.X, caseS.Y] = caseS;
 }