La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Le SuDoKu Enseignant responsable : Kanoui Henry André Julie Bruder Cécile Groupe D1.

Présentations similaires


Présentation au sujet: "Le SuDoKu Enseignant responsable : Kanoui Henry André Julie Bruder Cécile Groupe D1."— Transcription de la présentation:

1 Le SuDoKu Enseignant responsable : Kanoui Henry André Julie Bruder Cécile Groupe D1

2 SuDoKu Le SuDoKu est une grille constituée de 9 lignes et 9 colonnes formant 9 blocs de 3x3 cases. Le but est de la remplir avec les chiffres de 1 à 9 en respectant cette règle : chaque chiffre doit apparaître une et une seule fois sur chaque ligne, colonne, bloc.

3 Représentation des données Nous avons choisi de représenter la grille de SuDoKu par un tableau à deux dimensions composé de 81 cases. Chaque case est une structure contenant : - Un tableau de 10 entiers représentant la valeur de la case et l'ensemble des candidats - Un code couleur pour distinguer les cases rentrées par l'utilisateur (en rouge) de celles trouvées par le programme (en vert)

4 Ensemble de candidats Dans le tableau de candidats, la case dindice 0 contient la valeur de la case, ou 0 si la case na pas encore été trouvée. La case dindice i contient 1 si i est candidat, 0 sinon. Pour supprimer un candidat i, on positionne la case dindice i à 0. Si tous les candidats sauf un sont à 0, ce dernier représente la valeur de la case.

5 Méthode de résolution Nous appliquons répétitivement des règles de réduction (RegleRemplissage, R1, R2, R3) sur l'ensemble des candidats jusqu'à ce que la grille soit complétée. Après chaque appel, la fonction D1 attribue les valeurs aux cases qui nont plus quun seul candidat. Si les fonctions de réduction ne suffisent pas à résoudre la grille, une fonction de BackTrack sen charge.

6 R1 : exemple Ligne Ligne Tmp i =

7 R2 : exemple Ligne CandidatTmp i =

8 R3 : exemple Col

9 Bilan A travers ce projet, nous avons appris à : Réfléchir à la structure de données avant de se lancer dans le code Se répartir le travail : mettre en place les bases ensemble, puis développer les fonctions individuellement Quil fallait mieux gérer notre temps (planifier le travail) : nous avons en effet eu des problèmes de retard, nous ne pensions pas pouvoir finir le BackTrack

10 Bilan Un projet est une expérience enrichissante car il nous permet de développer un programme dans sa totalité (de la conception à la réalisation). On a pu également chercher des informations par nous-mêmes, indépendamment de notre cours de C. Ce projet nous a permis dappliquer nos connaissances de façon concrète sur un sujet intéressant.


Télécharger ppt "Le SuDoKu Enseignant responsable : Kanoui Henry André Julie Bruder Cécile Groupe D1."

Présentations similaires


Annonces Google