begin process at 2008 07 25 09:58:41
1 216 106 membres
83 nouveaux aujourd'hui
14 180 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 !

TOURS DE HANOI, (SIMPLE ET RAPIDE)


Information sur la source

Catégorie :Math & Algorithmes Classé sous : hanoi, tour, rapide, ergo5, nico1610 Niveau : Initié Date de création : 12/12/2006 Date de mise à jour : 12/12/2006 11:05:19 Vu : 2 285

Note :
4,5 / 10 - par 2 personnes
4,50 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10

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


Description

Pourquoi faire une interface compliquée , et plein de trucs qui ralentissent la mémoire du pc, quand cinqs lignes suffise ??

C'est pour cella que je vous dévoile ici, la résolution de ce fameu casse tête en seulement cinqs lignes de code !

Attention, n'exercez pas les talents de cette algorithmes sur trop de récurences à la fois.
Rien que pour 15 malheureux anneaux, il faut déja 32767 déplacement et pour 16 pas moins de 65535.
ATTENTION AU CPU QUI SURCHAUFFE !

Source

  • def hanoi(n,a=1,b=2,c=3):
  • if (n > 0):
  • hanoi(n-1,a,c,b)
  • print "Déplace ",a,"sur",c
  • hanoi(n-1,b,a,c)
def hanoi(n,a=1,b=2,c=3):
    if (n > 0):
        hanoi(n-1,a,c,b)
        print "Déplace ",a,"sur",c
        hanoi(n-1,b,a,c)

Conclusion

Ils suffit alors de tapé dans IDLE terminal : (ici pour 3 anneaux au départ )
>>> hanoi(3)
12 décembre 2006 11:05:20 :
Modification du niveau, supression de commentaire inutile !
  • signaler à un administrateur
    Commentaire de econs le 13/12/2006 11:16:07 administrateur CS

    Etonnant. Je n'imaginais pas que ce genre de chose soit "algorithmable". Deux récursivités dans la même boucle, c'est pas courant.

  • signaler à un administrateur
    Commentaire de vychnou le 14/12/2006 16:51:36

    Fortuitement, on trouve la même chose sur wikipedia...

  • signaler à un administrateur
    Commentaire de nico1610 le 14/12/2006 18:46:59

    De toute évidance, oui.
    Pour ma défence, je n'ai pas regardez sur wiki avant de me lancer la dessus !
    c'est un simple algorithme bien connue qui méritait d'être cité ici, je suis tombé sur le programme des tours de hanoi (http://www.pythonfrance.com/codes/TOURS-HANOI_39867.aspx) lors de mon dernier passage, et j'ai donc décidé d'y mettre une source un peu plus rapide d'éxécution (et plus simple).
    De plus du remarquera que ma fonction contien des paramtre optionel, qui ne figure pas sur wiki (bas oui je viens de vérifié la véracité de tes acusations.)

    Pour finir je trouve ca bien DUR de mettre 1/10 uniquement parce que la source exsiste dèja !!
    Devrai je te mettre aussi 1/10 à ta source (http://www.pythonfrance.com/codes/BROUILLEUR-TEXTE_40098.aspx) uniquement parce que l'on trouve ce truc partout sur internet ??

    Allez restons coutois même si ta note est des plus méchantes !

  • signaler à un administrateur
    Commentaire de vychnou le 14/12/2006 19:16:02

    Je t'ai mis 1 parce que tu dis "C'est pour cella que je vous dévoile ici" alors que ce n'est qu'une recopie insctruction après instruction d'un algorithme...
    Je ne pense pas que tu trouveras sur le net l'algorithme de brouillage que j'ai mis en place, avec une interface graphique en tk, l'utilisation d'expressions régulières etc... sur un nombre de lignes restreint. Peut être des programmes effectuant le traitement existent déja (si tu le dis), mais surement pas le même programme que j'aurais recopié de je ne sais où... la note de 1 n'est pas une offense à tes talents de programmeur étant donné que ces lignes ne sont pas de toi.

  • signaler à un administrateur
    Commentaire de vychnou le 14/12/2006 19:24:05

    Evidemment, si je notais la source en elle même, je mettrais 10, cet algorithme est d'une grande complexité pour 4 lignes de code!
    Mets un algorithme que tu auras réalisé d'aussi bonne facture, je mettrais 10 avec plaisir

  • signaler à un administrateur
    Commentaire de LouDumo le 21/05/2007 14:56:56

    Moi je ne cote pas.
    Bravo pour l'algorithme, mais est-ce bien celui qui résoud le problème avec le moins de déplacements possibles ?
    Si c'est le cas, bravo ! 20/10 !!!
    Mais je veux tempérer tout ceci pour cette orthographe dégueulasse, qui rend cet article quasiment illisible.
    Franchement, si vous ne savez pas écrire sans fautes, abstenez-vous d'écrire, on préfère !!

Ajouter un commentaire

Discussions en rapport avec ce code source

Pub



Appels d'offres

Creation portail video
Budget : 3 000€
Site de e-commerce
Budget : 5 000€
Demande de devis pour ...
Budget : 7 000€

CalendriCode

Juillet 2008
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

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