Developpez.com - Delphi
X

Choisissez d'abord la catégorieensuite la rubrique :


Défi n°5 : Le Sudoku Solver

Date de publication : 30 mai 2009

Par L'Equipe DELPHI
 

Le cinqième défi, proposé par Félix Guillemot est la réalisation d'un Sudoku Solver !

            



I. Le sujet de ce cinquième défi

Le défi nous est lancé par Félix Guillemot. Il s'agit de réaliser un solveur de grilles de Sudoku.

Merci à Félix Guillemot de nous avoir proposé ce défi !


I-A. Le Sudoku

Est-il encore nécessaire de présenter le Sudoku ?

Le jeu se déroule sur une grille de 9x9, elle-même divisée en 9 sous-grilles de 3x3.
Le but est de remplir la grille avec des nombres de 1 à 9, tout en respectant les contraintes suivantes :


I-B. Pré-requis

Pour réaliser ce défi, une simple édition personnelle de Delphi suffit. Pas besoin d'avoir les bibliothèques spécifiques aux versions Pro/Entreprise/Architecte !
Certaines versions personnelles de DELPHI sont disponibles au téléchargement dans la page téléchargement de la rubrique DELPHI de www.developpez.com !

Il peut être nécessaire de savoir farfouiller sur le site de www.developpez.com dans la rubrique DELPHI et plus particulièrement dans la F.A.Q Delphi , dans les SOURCES DELPHI, dans les tutoriels DELPHI et dans les forums DELPHI.


I-C. Les objectifs du défi

Votre solution devra offrir les fonctionnalités suivantes :

Après la résolution, la solution doit s'afficher dans la grille, évidemmment

De plus, afin de faciliter les tests, votre solution devra permettre de charger une grille pré-définie à partir d'un fichier txt.

Le fichier aura le format suivant :
090871340
410903080
386245910
048090100
601500498
950184000
509030071
074600030
820019654 
Pour info, en cherchant un peu, vous trouverez AI Escargot, la grille annoncée comme la plus difficile à résoudre au monde : elle a été fabriquée par Arto Inkala, un mathématicien finlandais, et fut un chantier de trois mois de modélisation à l'aide d'un ordinateur et l'examen de trois milliards de possibilités.

Et bien sûr, le défi ne consiste pas à résoudre AI Escargot, c'est juste un point de repère, une référence. Il faut commencer par des plus simples et résoudre AI Escargot n'est pas le seul but à atteindre, ce n'est pas LE défi à relever, un challenge tout au plus.

Les participant doivent respecter les règles du défi, et le déroulement du défi et plus précisément que "l'utilisation de composantes ou bibliothèques autres que celles fournies en standard par CodeGear sont interdites, qu'elles soient commerciales, freewares, open-source etc. ..."


I-D. La notation

Les critères déterminants pour le Jury qui devra désigner le meilleur "Sudoku Solver" sont les suivants :



            

Valid XHTML 1.0 TransitionalValid CSS!

Responsable bénévole de la rubrique Delphi : Alcatîz -