Vous êtes nouveau sur Developpez.com ? Créez votre compte ou connectez-vous afin de pouvoir participer !

Vous devez avoir un compte Developpez.com et être connecté pour pouvoir participer aux discussions.

Vous n'avez pas encore de compte Developpez.com ? Créez-en un en quelques instants, c'est entièrement gratuit !

Si vous disposez déjà d'un compte et qu'il est bien activé, connectez-vous à l'aide du formulaire ci-dessous.

Identifiez-vous
Identifiant
Mot de passe
Mot de passe oublié ?
Créer un compte

L'inscription est gratuite et ne vous prendra que quelques instants !

Je m'inscris !

Défi Pascal n° 2 : un résolveur de grilles de Sudoku
Avec Lazarus

Le , par Alcatîz

0PARTAGES

0  0 
Bonjour à toutes et à tous,

L'équipe Delphi vient de lancer son 5ème défi : un résolveur de grilles de Sudoku.

L'équipe Pascal vous propose cette année de lancer un défi... à Delphi, en participant également à ce défi mais en allant encore plus loin grâce à l'atout majeur de Lazarus : la compilation multi-plateforme.

Le but du défi sera donc de réaliser un résolveur de grilles de Sudoku pouvant compiler indifféremment pour Linux et Windows, voire même d'autres plateformes.

Le défi est ouvert à tous les membres du forum (si vous n'êtes pas encore membre et souhaitez participer, enregistrez-vous gratuitement).

Eventuellement, pour ceux qui ne maîtriseraient pas les règles du jeu, les voici brièvement : la grille de Sudoku est un carré de neuf cases de côté, subdivisé en autant de sous-grilles carrées identiques, appelées régions. Chaque ligne, colonne et région ne doit contenir qu’une seule fois tous les chiffres de 1 à 9. Formulé autrement, chacun de ces ensembles doit contenir tous les chiffres de 1 à 9. Précision : une vraie grille de Sudoku ne possède qu'une et une seule solution.


(image provenant de Wikipedia)

Vous disposez d'un peu plus de quatre mois pour peaufiner votre programme, soit jusqu'au 31 décembre 2009.
La cotation prendra en compte tous les aspects : le respect du cahier des charges, le look du logiciel, l'originalité, mais aussi la qualité du code (élégance des solutions choisies, découpage en modules, choix des algorithmes, optimisation, etc), la qualité du source (indentation, choix des identificateurs, qualité des commentaires, etc).

Un classement sera réalisé sur base des cotations. Le vainqueur pourra faire partie du jury du défi suivant (sauf, bien sûr, s'il décide de concourir) !
Les sources des meilleurs candidats seront publiés dans la rubrique Sources.

Voici le règlement complet du défi :

Cahier des charges :
  • Réaliser un résolveur de grilles de Sudoku, qui charge une grille stockée dans un fichier ou composée par l'utilisateur, l'affiche et la résoud à la demande de l'utilisateur (et affiche bien entendu le résultat );
  • Compilable pour Windows et Linux au minimum;
  • Avec Lazarus;
  • Sans restriction de choix des composants.

Une grille stockée dans un fichier texte aura le format suivant :
Code : Sélectionner tout
1
2
3
4
5
6
7
8
9
160000009
000008005
007050600
020903000
009060400
000504090
004070900
500800000
900000063
(une ligne de la grille = une ligne du fichier, les 0 étant des cases vides).

Dates :

Les sources pourront être envoyés à Alcatîz jusqu'au 31-12-2009.
Au fur et à mesure de la réception des sources, la liste des participants sera mise à jour à la suite de ce message.
Surtout ne postez pas vos sources sur le forum.

Cotation :
  • Respect du cahier des charges : 5 points;
  • Qualité du code exécutable (principalement la performance du solveur : rapidité, capacité à résoudre des grilles difficiles) : 7 points;
  • Qualité du source : 4 points;
  • Look, ergonomie, originalité, créativité : 4 points.

Publication des résultats :

Dans le courant du mois de janvier 2010.

Bonne chance à tous les participants !

Liste des participants inscrits :

(dans l'ordre d'inscription)

darrylsite
Le Seynois
dimanche2003
Ludelphi7

Résultats :

Allez, faisons encore durer un peu le suspense le temps d'un clic de souris !
Les résultats sont ici : http://www.developpez.net/forums/m4934763-84/

Félicitations au vainqueur !

Une erreur dans cette actualité ? Signalez-le nous !

Avatar de darrylsite
Rédacteur https://www.developpez.com
Le 30/07/2009 à 17:33
Salut,

Avant de me lancer dans la programmation de mon résolveur de grille de sudoku, j'aimerais savoir si on doit faire une application GUI ou console vu que c'est pas spécifier dans le post.
Si le choix appartient au participant, j'opterais pour le GUI; mais la question est si une application console sera jugée sur la meme base qu'une application GUI.
Aussi, j'aimerais bien savoir si, on peut programmer en multithread ou doit-on faire seulement du mono-thread.

Voilà quelques eclaircissement que j'aimerais avoir avant de commencer à coder ce résolveur de grille de sudoku que je trouve déjà passionnant
0  0 
Avatar de Alcatîz
Responsable Pascal, Lazarus et Assembleur https://www.developpez.com
Le 30/07/2009 à 19:14
Bonjour,

Pour rivaliser avec les Delphistes, à performances égales une application GUI aura de meilleures chances. Monothread, multithread... tu peux t'éclater, il n'y a pas de restriction de composants du moment que le source puisse compiler pour au moins deux plateformes. Et vu ton projet du 1er défi, nous savons déjà que nous pouvons nous attendre à ce que tu sortes des sentiers battus !
0  0 
Avatar de darrylsite
Rédacteur https://www.developpez.com
Le 30/07/2009 à 20:04
J'annonce donc officiellement ma participation à ce défi.
J'espère que nous serions nombreux, à faire cette course de vitesse; Qui sera plus rapide que la lumière?
0  0 
Avatar de Alcatîz
Responsable Pascal, Lazarus et Assembleur https://www.developpez.com
Le 30/07/2009 à 20:18
Citation Envoyé par darrylsite Voir le message
J'annonce donc officiellement ma participation à ce défi.
Eh bien bonne chance à toi !
0  0 
Avatar de darrylsite
Rédacteur https://www.developpez.com
Le 12/08/2009 à 20:11
J'ai fait un tour chez nos amis les delphistes, je trouve qu'ils sont bien dynamique et en avance
En fait il y a d'intéressantes ressources dans leurs postes, des liens vers des méthodes de résolution, des conseils et pleins d'autres trucs.

Pour ceux qui veulent participer à ce concours se sera bien d'y jeter un œil.
le lien :delphi.
0  0 
Avatar de mick605
Membre chevronné https://www.developpez.com
Le 24/08/2009 à 20:03
Salut !

Je suis un Delphiste aussi ! Je m'étonne du peu de gens qui participent au defi pascal ... En effet, sur le defi delphi, ya bcp de monde et de posts ! Je vous invite donc a aller faire un tour du cote de ce forum ... Combien de personne participent a ce défi chez vous ??

Mick605
0  0 
Avatar de Alcatîz
Responsable Pascal, Lazarus et Assembleur https://www.developpez.com
Le 25/08/2009 à 7:10
Il faut prendre en compte le fait que le délai pour le présent défi court jusqu'au 31 octobre, les candidats ont encore tout le temps de se manifester.
0  0 
Avatar de FullSpeed
Inactif https://www.developpez.com
Le 25/08/2009 à 8:58
Bonjour a mes amis Pascalien

Je participe au defit N° 5 pour un solveur Sudoku

Depuis pas mal de temps je m'interroge sur Lazarus:
Je viens et suis toujours un fana des Mac
Alors j'ai des démangeaisons
Peut-on s'inscrire aux deux defits:
une version Delphi et une Pascal?
L'esprit sur Delphi est tres 'compétition': on garde pour soi
Je viendrais sur Lazarus seulement si on supporte un peu le débutant sans avoir peur qu'il vous pille vos idees.
J'aime bien le barème: on sait où on va...
Jérôme
0  0 
Avatar de Alcatîz
Responsable Pascal, Lazarus et Assembleur https://www.developpez.com
Le 25/08/2009 à 9:08
Rien n'empêche bien sûr de participer aux deux défis !

Le portage de Delphi vers Lazarus est tout-à-fait possible moyennant quelques adaptations.
0  0 
Avatar de darrylsite
Rédacteur https://www.developpez.com
Le 25/08/2009 à 13:45
Citation Envoyé par FullSpeed Voir le message
Bonjour a mes amis Pascalien

L'esprit sur Delphi est tres 'compétition': on garde pour soi
Oui, j'ai remarqué ça

Je viendrais sur Lazarus seulement si on supporte un peu le débutant sans avoir peur qu'il vous pille vos idees.
J'aime bien le barème: on sait où on va...
Bienvenu alors nous voila dejà deux participants
0  0