begin process at 2008 05 16 05:07:49
1 173 215 membres
58 nouveaux aujourd'hui
13 970 membres club

Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum.
Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

SOLVEUR DE SUDOKU EN VBS (VISUAL BASIC SCRIPT)


Information sur la source

Catégorie :VBScript Classé sous : sudoku, solver, vbs Niveau : Débutant Date de création : 13/01/2006 Date de mise à jour : 13/03/2006 22:27:12 Vu / téléchargé: 11 043 / 2 133

Note :
8 / 10 - par 3 personnes
8,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10

Commentaire sur cette source (12)
Ajouter un commentaire et/ou une note

Description

Trouve la solution de la plupart des grilles (même les VERY HARD du Times) en une fraction de seconde.
Analyse récursive : on teste toutes les cases vides avec les valeurs de 1 à n (normalement n=9)...

Possibilité de recherche exhaustive. La version 4.0-X Couvre plusieurs tailles de grilles (jusqu'à 5*5 tel quel, et jusqu'à 64*64) en adaptant le script.
VBS est indépendant de tout environnement. Facilement réutilisable dans VB ou ailleurs.
Mode d'emploi et exemples fournis.
Pour les "Membres Club", vous pouvez télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip

03 février 2006 17:08:53 :
03/02/2006 : grille de GAGOU9, résolue en 230 secondes !!! Trop lent, j'espère que cette grille est une exception ! Du coup, ajout de la version d'origine du script V1 (la version courante est la V3), qui met 160 seconde pour la même grille (mais mono-solution)...
13 mars 2006 22:27:12 :
V4.0 -9 : version rapide traitant les grilles 9x9 -X : version plus lente multiformat La V4 sera ma dernière mise à jour sur ce site pour le moment, jusqu'à ce que j'aie peut-être un jour le temps d'écrire des pré-optimisations (recherche préalable des cases à solution immédiate évidentes)...
  • signaler à un administrateur
    Commentaire de gagou9 le 21/01/2006 17:08:25

    Salut !
    ton solver ne resout pas cette grille (niv diabolique)

    2 3 8    
    8  7    
          1  
    6 5 7  
    4      3
       1    
           82
    5    6  
    1      

    lol salut !!

  • signaler à un administrateur
    Commentaire de KakasEtt le 28/01/2006 17:45:32

    Bonjour,

    Mon solver trouve des dizaines de milliers de solutions à cette grille incomplete.
    En voici simplement 2 :

    SOLUTION N° --------- 1
    2 1 3 4 8 5 6 7 9
    8 4 6 7 1 9 2 5 3
    7 5 9 2 6 3 1 4 8
    6 2 5 3 7 4 8 9 1
    4 8 1 6 9 2 5 3 7
    3 9 7 1 5 8 4 2 6
    9 6 4 5 3 1 7 8 2
    5 7 8 9 2 6 3 1 4
    1 3 2 8 4 7 9 6 5

    SOLUTION N° --------- 50088
    2 1 3 4 8 5 6 7 9
    8 4 6 7 1 9 2 5 3
    7 5 9 2 6 3 1 4 8
    6 3 5 9 7 4 8 2 1
    4 2 1 6 5 8 9 3 7
    9 7 8 1 3 2 4 6 5
    3 6 4 5 9 1 7 8 2
    5 9 7 8 2 6 3 1 4
    1 8 2 3 4 7 5 9 6
    Je ne vois pas ce qui justifie votre commentaire...

  • signaler à un administrateur
    Commentaire de gagou9 le 29/01/2006 15:11:01

    Re salut !!
    desolé de vous avoir tutoyé, aparament n'etes pas de ce genre!!

    bon, pour reparler de la grille, il doit y avoir une erreur dans celle que je vous ai donné car elle n'a qu'une seule solution logique, donc c'est etrange! je verifie cela tout de suite !

    apres verification, effectivement, cette grille n'a qu'une solution, voir ici pour la grille non resolue :

    http://zappiweb.free.fr/images/sudoku.jpg

    voila !
    bon bah bonne prog'

    Salut

  • signaler à un administrateur
    Commentaire de KakasEtt le 03/02/2006 17:01:43

    Bonjour,

    je te remercie tout d'abord pour la super grille ! Jamais vu une grille aussi difficile (pour cet algo)! L'est-elle autant en résolution manuelle ? J'imagine que la difficulté d'une grille se mesure par rapport au type d'algorythme utilisé...

    Cependant... Il y a un timer dans le script qui évite les boucles infinies en phase de développement... Il est à 10, en l'augmentant, on trouve la solution !
    Script V3 = 230 secondes. J'avoue, c'est long !
    Je livre donc également le script V1, qui trouve la solution en 160 secondes (sur ma machine)...

    Salut, et bon week-end !

    (p.s. je ne tutoie jamais la première fois, pour diverses raisons, entre autre pour éviter de dire n'importe quoi, surtout quand je suis irrité que qq'un aie pu éventuellement trouver une faille à mon pgm !   ;-))

  • signaler à un administrateur
    Commentaire de KakasEtt le 03/02/2006 17:12:49

    P.S. à GAGOU9 : dans première la grille que tu m'as donnée, il manque des espaces au début de certaines lignes (j'avais fait un copier/coller de la grille, et n'avais pas de pb à la résoudre).
    Merci donc pour l'image...

  • signaler à un administrateur
    Commentaire de guyvdv le 26/02/2006 14:36:20

    Bonjour les joueurs,
    J'ai trouvé dommage que le script ete en VBS, difficile a voire ce qu'il ce passe. Alors j'ai reecris le script en vb.net 2005 express
    alez voire sur http://vbfrance.com/code.aspx?ID=36268
    merci et a bientot
    Guy van der Velden

  • signaler à un administrateur
    Commentaire de KakasEtt le 27/02/2006 00:33:42

    Bonjour,

    merci pour cette nouvelle version, je vais vois ce que cela donne ! Je donnerai des nouvelles.

    KakasEtt

  • signaler à un administrateur
    Commentaire de KakasEtt le 27/02/2006 00:41:00

    Bonsoir,

    Je peux déjà dire que le but de VBS était d'avoir un module unique à lancer sur n'importe quelle machine, sans s'encombrer d'environnement de développement ni d'interfaces quelconques. En VBnet nous avons déjà 6 modules, que je ne suis pas sûr de pouvoir lancer sur mon ordi, sans plus... Je verrai bien.
    Quant au "difficile de voir ce qui se passe", j'ai pourtant essayé d'être simple et modulaire, mais je commenterai plus ma prochaine version, c'est entendu !

    Bonne soirée ! A bientôt !

  • signaler à un administrateur
    Commentaire de guyvdv le 27/02/2006 09:38:10

    Bonj KakasEtt
    Tu a raison pour le portage de vbs.
    Mais ou aprends tu a ecrire en vbs? livre? ou practique?
    A+
    Guy van der velden

  • signaler à un administrateur
    Commentaire de KakasEtt le 07/03/2006 21:14:15

    Bonsoir Guy,

    Sans l'environnement de développement adéquat, je n'ai pas réussi à lancer ta version...
    Quant à l'apprentissage de VBS, ce n'est pas autre chose que du Visual Basic, ou du basic tout court, c'est à dire que c'est le même langage, à quelques infimes détails près, que le VB de VisualBasic, que celui utilisé ou utilisable dans les macros de Word, d'Excel... ou en VB.net. Je ne sais pas ce qu'est VB.net, mais en relisant ta version, elle ne diffère que très peu de la mienne... Donc en conclusion, on trouve un peu partout des fichiers d'aide contenant la syntaxe de ce langage. Quant à VBS en particulier, un fichier d'aide est fourni avec Windows, sinon, on doit bien le trouver sur internet...

    Voilà... Ce script doit pouvoir tourner sans grosses modifications en tant que macro Word ou Excel ou VB ou VB.net ou... Il faut seulement modifier la lecture et la restitution des données...

    A bientôt,
       KakasEtt.

  • signaler à un administrateur
    Commentaire de guyvdv le 08/03/2006 17:31:10

    merci de ta reponse,
    Pour l'instant j'etudi des chose sur recursion de erwin

    'http://personal.vsnl.com/erwin/magic.htm

    Tres claire et tous doucement il y a des chose qui reviennes, comme variatie, combinatie et permutatie que j'ai apris pendant mais etude de prof math et phys.(mots en francais ???)

    A+
    Guy van der Velden

  • signaler à un administrateur
    Commentaire de MVI le 08/03/2007 16:24:29

    Bonjour,
    Le problème de Gagou9 de Janvier ne m'est pas apparu diabolique.
    Le solveur que j'ai écrit (sous VBA Excel voir n°41064) l'a résolu en 3s48.
    Il doit y avoir des problèmes qui sont adaptés à certains algorithmes et vice versa. Le mien n'a rien de transcendant, il est même plutôt bestial...
    Good luck avec la récursivité.
    Je suis preneur des bugs et autres problèmes qui ne pourraient pas être résolus afin d'améliorer mon algorithme.

    A+

Ajouter un commentaire

Appels d'offres

Pub



Snippets en rapport

CalendriCode

Mai 2008
LMMJVSD
   1234
567891011
12131415161718
19202122232425
262728293031 

VS Express FR Gratuit !

VS Express en français et 100% gratuit !

Téléchargements

Logiciels à télécharger sur le même thème :

Boutique

Boutique de goodies CodeS-SourceS