begin process at 2012 05 30 12:16:14
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C/C++

 > 

Archives

 > 

Au secours

 > 

sudoku HELP


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

sudoku HELP

mercredi 21 décembre 2005 à 13:07:38 | sudoku HELP

Hellboy67

Voila j'essaie de faire un prog qui remplie les cases d'un sudoku

j'ai ma fonction candidats qui me renvoie une file contenant tout les candidats possible avec la case en question.
j'utilise une pile de structure qui contient les coordonnées de la case et la file en question a laquelle on a enlever la valeur que l'on a mis dans la case.

struct donnee
{
 position pos;
 queue<int> valeur;
};

struct position
{
 int lig;
 int col;
};

toute les case de la grille de sudoku qui sont vide comporte des zéro
j'ai fait une procédure qui est censé me renvoyer la grille complété
mais voila quand il trouve une erreur (ou plutot pas de possibilité pour une case) c la que sa coince il est censé dépiler pour prendre le candidat suivant a la file s'il y en a un et la grille renvoyer est totalement fausse
quelqu'un aurai une solution a me proposer avec ce que j'ai fait?


void solution (int grille [9][9])
{
     int i, j;
     bool b;
     stack<donnee> p;
     donnee cases;
    
     for (i = 0; i < 9; i++)
     {
         for (j = 0; j < 9; j++)
         {
             if (grille [i][j] == 0)
             {
                 cases.pos.lig = i;
                 cases.pos.col = j;
                 cases.valeur = candidats (cases.pos, grille);
                
                 if (!cases.valeur.empty())
                 {
                      grille [cases.pos.lig][cases.pos.col] = cases.valeur.front();
                      cases.valeur.pop(); //Retirer la valeur de la tête de file
                      p.push(cases); //Empiler la structure
                 }
                 else
                 {
                      p.pop();
                      b = false;
                     
                      while (!b)
                      {
                           if (!p.top().valeur.empty())
                           {
                                p.pop();
                           }
                           else
                           {
                                grille [i][j] = p.top().valeur.front();
                                p.top().valeur.pop();
                                b = true;
                           }
                      }
                 }
             }
         }
     }
}


Cette discussion est classée dans : grille, valeur, case, cases, pos


Répondre à ce message

Sujets en rapport avec ce message

aide pour un code [ par Hellboy67 ] pour un exo de l'iut en prog je dois faire un sudoku ma fonction solution marche mais lorsque pour un sudoku donnée, il n'y a pas de solution j'ai une affichage d'une grande grille [ par gillescpp ] Bonjour J'ai un probleme avec opengl J'ai ecris un petit code qui génère une grille en triangles et les affiche si on le lui demande. Il possede auss euhhh ... :-) desolé, c'est compliqué a expliquer... [ par BertaNd ] salut c'est assez compliqué a expliquer donc je met une source, ca parle mieux ! (API win32) tout le tralala de la creation de la fenetre etc...     StringGrid, griser quelques cases... [ par xav42 ] Bonjour!!!!J'ai un Probleme... j'ai une stringgrid et je voudrai griser simplement quelque case et non toute une ligne ou une colonne comme la proprié Qui veut gagné 50Frs!!!!!!!!!!!!!! [ par Akil ] Bonjour à tousJe cherche quelqu'un qui sait bien programmer en langage C++ et Vb.J'ai un projet d'éditeur de texte Farsi (Righttoleft)en C++ et je vou disparition de valeur !!!!!!!!!!!!!!! [ par toto000 ] Bonjour,Alors voila j'ai une fonction menufonc (menu de la souris) avec en case 1: taille de l'image (du fichier que comporte la variable fichier_imag switch case et valeur bouléen [ par hop ] Salut,Je souhaiterai utliser la fonction switch casemais en testant plusieurs valeur bouléen:Du style si j'appel les valeur booleenvaleur1 valeur2 val morpion [ par charon123 ] Bon, 1), je suis débutant et je viens de commencer il y a une semaine. 2)j'utilise dev-cpp es ce que c'est bien? 3)alors voila, j'essaye de faire un m un chemin sur une grille [ par anzelus ] salut à tous,je bloque sur un probleme d'affichage d'une route sur une grille, j'ai reussi à dessiner la grille avec des cases pleines ou vides, mais Aide partie résolution de mon sudoku... [ par Francks11 ] Bonsoir, enfaite il me faudrait de l'aide pour ma partie sol du sudoko qui recherche les solutions du jeu. A savoir, que pour chaque essai, on conser


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,203 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales