25 Juillet 2018 à 21:04 (modifié le 25 Juillet 2018 à 21:38)Le coin des programmeurs et des perforateurs de cartes
#1
Pour initier le sujet et en partant de cette (excellente) vidéo sur Fibonacci :
Spoiler - Cliquer ici pour lire la suite
Citation de Dr :
Il monte et descend les escaliers, comme un con. Et puis pouf, au moment où on ne s’y attend pas, et sans s’en apercevoir, on est dans la récursivité et Fibonacci. Il est fort !
Je ne sais pas pour quel age, mais ça doit aussi pouvoir intriguer des enfants...
Citation de El :
J'aimerais bien trouver un truc aussi limpide pour expliquer la résolution des tours de Hanoi par algorithme récursif
Spoiler - Cliquer ici pour lire la suite
Je propose :
def hanoi(n,dep,arr,piv):
if n == 1:
print "Déplacer un disque de "+dep+" vers "+arr
else:
hanoi(n-1,dep,piv,arr)
hanoi(1,dep,arr,piv)
hanoi(n-1,piv,arr,dep)
hanoi(3,'a','c','b')
Avec comme paramètres pour la fonction :
- nombre de disques à déplacer
- nom de la pile de départ
- nom de la pile d'arrivée
- nom de la pile servant de "pivot"