Nous avons reçu le projet de Ludelphi7, merci à lui.
C'est le second projet reçu, je rappelle que l'inscription au défi n'est effective qu'à la réception des sources.
Nous avons reçu le projet de Ludelphi7, merci à lui.
C'est le second projet reçu, je rappelle que l'inscription au défi n'est effective qu'à la réception des sources.
Règles du forum
Cours et tutoriels Pascal, Delphi, Lazarus et Assembleur
Avant de poser une question, consultez les FAQ Pascal, Delphi, Lazarus et Assembleur
Mes tutoriels et sources Pascal
Le problème en ce bas monde est que les imbéciles sont sûrs d'eux et fiers comme des coqs de basse cour, alors que les gens intelligents sont emplis de doute. [Bertrand Russell]
La tolérance atteindra un tel niveau que les personnes intelligentes seront interdites de toute réflexion afin de ne pas offenser les imbéciles. [Fiodor Mikhaïlovitch Dostoïevski]
Salut,
Je viens de confirmer mon inscription
En fait, vu le nombre assez important de mes unités, je me damandais si vous accepteriez qu'on joint aux codes une note detaillant la structure du code (des petits diagrammes par exemple).
Règles du forum
Cours et tutoriels Pascal, Delphi, Lazarus et Assembleur
Avant de poser une question, consultez les FAQ Pascal, Delphi, Lazarus et Assembleur
Mes tutoriels et sources Pascal
Le problème en ce bas monde est que les imbéciles sont sûrs d'eux et fiers comme des coqs de basse cour, alors que les gens intelligents sont emplis de doute. [Bertrand Russell]
La tolérance atteindra un tel niveau que les personnes intelligentes seront interdites de toute réflexion afin de ne pas offenser les imbéciles. [Fiodor Mikhaïlovitch Dostoïevski]
Bonjour,
J'ai trouve une grille satanique qui fait raler mon solveur
Meme avec Dancing links, je n'arrive pas à le resoudre, le solveur tourne sans jamais s'arreter, et je ne parle pas du processeur120000000
000120000
000000100
012000000
000012000
000000012
201000000
000001020
000000001
Alors si quelqu'un arrive à le resoudre, j'aimerais bien qu'il nous montre son chrono.
Sinon, j'ai trouvé tout récemment la methode dancing links, qui utilise les listes doublement chainées pour resoudre les grilles. J'ai trouvé un code que en C que j'ai traduit en pascal. Je ne sais pas si j'ai le droit de le poster ici. Il est à noté que le code est sur le net, et la source ne viens pas de moi.
Je poste donc le code du dancing links que j'ai traduit:
Site d'origine :http://cgi.cse.unsw.edu.au/~xche635/dlx_sodoku/
la traduction est compilable sous lazarus/freepascal. le code fonction en console.
Je ne sais pas si c'est la methode est plus lente ou c'est parce que le code n'est pas optimisé, mais il est dix fois plus lent que le mien. Mais le temps de resolution est persque constant queqle soit la grille.
Alors si quelqu'un d'autres idées sur la question, j'aimerais bien le savoir
Articles :
Création d'un système de chat en Pascal
Programmes :
Défi Pascal 2011 - Mon Tetris
Défi Pascal 2010 - Mon système de chat
Défi Delphi 2009 - Mon Sudoku Solver
Retrouvez mes différents projets sur ma page personnelle.
Tenez a tous, cadeau :
Pour savoir le nombre de solutions d'une grille :
http://www.top-sudoku.com/
Un forum entièerement dédié au sudoku, je me demande pourquoi je l'ai pas trouvé plus tot :
http://www.setbb.com/phpbb/index.php?mforum=sudoku
A propos du DLX :
A vrai dire, je ne me suis jamais bien penché sur la question ... J'ai souvent cherché a comprendre la technique, mais j'ai laissé tomber plusieurs fois ... Mais ca a l'air d'être une très bonne solution, parce que tout le monde en parle !
Articles :
Création d'un système de chat en Pascal
Programmes :
Défi Pascal 2011 - Mon Tetris
Défi Pascal 2010 - Mon système de chat
Défi Delphi 2009 - Mon Sudoku Solver
Retrouvez mes différents projets sur ma page personnelle.
Moi c'est ludodelphi7,
comme le nom l'indique, je programme d'habitude en delphi.
Le projet que j'ai transmis est l'adaptation de mon projet delphi, le chronometre en moins.
A propos, même si c'est un peu tard, quelqu'un peut me donner un chronometre pour lazarus que je puisse voir l'éventuel différence entre delphi et lazarus ?
merci d'avance
salut,
Pour des questions concernant la programmation pascal ou lazarus/freepascal, tu obtiendras davantage de reponde en postant directement dans la section dédiée.
Sinon, Lazarus à un composant TTimer que tu pourras utiliser. Tu peux aussi chercher d'autres composants tiers comme epiktimer ou autres. Mais il faut veiller à ce que ces composant soit minimun compatible windows/linux pour respecter le cahier de charge.
Bon, je me suis penché sur les Dancing Links ...
Si j'ai bien compris, c'est simplement un systeme permettant de classer facilement les données, et permettant de supprimer facilement un élément, puis le remettre ...
Pour le sudoku, c'est vrai que ca doit être efficace, du moins pour la partie bruteforce ... Pour la partie logique, par contre, ca devrait pas être d'une grande utilité ... (en tout cas, je parle pour mes méthodes logiques, car je me suis créé un système de stockage assez sympa, donc ca va)
darryl > tu voudrais pas nous poster quelques temps obtenus avec le DLX ? Pour les 7 grilles si possible, pour qu'on puisse comparer avec les anciens temps sur le fofo ...
Si j'ai le temps, je testerai peut être une résolution grâce au DLX ... Ca pourrait m'être utile de savoir me servir de ca ...
Articles :
Création d'un système de chat en Pascal
Programmes :
Défi Pascal 2011 - Mon Tetris
Défi Pascal 2010 - Mon système de chat
Défi Delphi 2009 - Mon Sudoku Solver
Retrouvez mes différents projets sur ma page personnelle.
Je vais ajouter la classe à mon projet et vous donnerais les chronos. Mais ce code n'est pas optimisé, le temps est beaucoup plus lents. Pour pouvoir réellement comparer les chonos il faut retoucher un peu le code.
Ok, fais nous parvenir ces temps, meme non optimisés, pour voir vite fait ...
Bon, sinon, je crois avoir trouvé des super moyens de méthodes logiques grâce a ce DLX ... Une nouvelle méthode de résoudre un sudoku ... Ca pourrait être assez rapide, et aussi super court niveau code ...
Enfin bref, on verra ca après le défi ...
Articles :
Création d'un système de chat en Pascal
Programmes :
Défi Pascal 2011 - Mon Tetris
Défi Pascal 2010 - Mon système de chat
Défi Delphi 2009 - Mon Sudoku Solver
Retrouvez mes différents projets sur ma page personnelle.
Voici les chronos :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 grille 1: 40.354 ms grille 2: 48.144 ms grille 3: 33.488 ms grille 4: 38.313 grille 5: 306.953 ms grille 6: 1.5 s grille 7: 74.312 ms
Oui, c'est vrai que c'est moins rapide qu'avant, mais je suis sur que tu va réussir a très bien l'optimiser ... Donc, tiens nous au courant sur tes chronos de DLX, en tout cas moi, ca m'interesse !
A+
Articles :
Création d'un système de chat en Pascal
Programmes :
Défi Pascal 2011 - Mon Tetris
Défi Pascal 2010 - Mon système de chat
Défi Delphi 2009 - Mon Sudoku Solver
Retrouvez mes différents projets sur ma page personnelle.
C'est vrai que c'est beaucoup plus lent. Avec mon solveur sans dlx pour la grille 1, je fais du 129 microS contre 40 ms en dlx.
Tiens, j'avais même pas vu ce message ... Nos posts se sont croisés ...
Ouais, pour le sudoku, j'aurais bien une idée qui pourrait résoudre toutes ces solutions en une seule méthode de calcul pas spécialement longue :
Donc je me dis que, comme toutes ces méthodes seront codées en une seule procedure, le code serait assez court donc facilement compréhensible et optimisable ... Enfin, peut être je me trompe, mais bon ...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 Emplacement unique Candidats doubles, triples, quadruples ... Paires, triplets, quadruplets, etc. cachés X-Wing Swordfish, Jellyfish, etc
Pour le générateur, je pense que ca ne peut qu'être un plus, ensuite, il faut trouver un moyen efficace de coder tout ca ^^
Articles :
Création d'un système de chat en Pascal
Programmes :
Défi Pascal 2011 - Mon Tetris
Défi Pascal 2010 - Mon système de chat
Défi Delphi 2009 - Mon Sudoku Solver
Retrouvez mes différents projets sur ma page personnelle.
Attention pour les retardataires : la date limite du 31 décembre 2009 approche à grands pas !
Passé cette date, plus aucun projet ne sera pris en considération.
Règles du forum
Cours et tutoriels Pascal, Delphi, Lazarus et Assembleur
Avant de poser une question, consultez les FAQ Pascal, Delphi, Lazarus et Assembleur
Mes tutoriels et sources Pascal
Le problème en ce bas monde est que les imbéciles sont sûrs d'eux et fiers comme des coqs de basse cour, alors que les gens intelligents sont emplis de doute. [Bertrand Russell]
La tolérance atteindra un tel niveau que les personnes intelligentes seront interdites de toute réflexion afin de ne pas offenser les imbéciles. [Fiodor Mikhaïlovitch Dostoïevski]
Quelques heures avant la clôture et ces mêmes quelques heures avant 2010.
Je suis ce que je suis grâce à ce que nous sommes tous Humanité aux Humains!! !
Entre ce que je pense, ce que je veux dire, ce que je crois dire, ce que je dis ce que vous avez envie d'entendre, ce que vous croyez entendre, ce que vous entendez, ce que vous avez envie de comprendre, ce que vous comprenez ... Il y a dix possibilités que nous ayons des difficultés à communiquer. Mais essayons quand meme ....... E. Wells
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager