Je me suis beaucoup aidé de ces trois sites : -Les deux premiers pour comprendre, parce qu'il y a peu de doc en anglais, alors en français c'était encore pire http://www.mathpuzzle.com/MAA/01-Paterson's%20Worms/mathgames_10_24_03.html https://en.wikipedia.org/wiki/Paterson%27s_worms -Celui-ci pour le fantastique tableau, utilisez le pour trouver les graines, elle y sont toutes (lorsque des graines sont symétriques ils ne les mettent pas dans le tableau) https://fr.wikipedia.org/wiki/Vers_de_Paterson Les règles : De façon générale, les vers de Paterson sont un type de turmite définis sur les bords d'une grille isométrique hexagonale. En considérant une grille triangulaire infinie, on considère l'un des nœuds de cette grille comme étant un « ver ». Le ver se déplace initialement le long d'une ligne de la grille vers le nœud immédiatement situé à sa droite. Arrivé à ce nœud, le ver peut prendre cinq directions possibles sans revenir sur ses pas. On pose que le ver prend l'une d'entre elles, avance vers le nœud suivant en conséquence et continuera à faire de même tant qu'il arrivera sur un nœud où cinq directions sont possibles : Si le ver a continué tout droit, il continuera à faire de même indéfiniment Si le ver a tourné de 60° à gauche ou à droite, il fera de même pendant cinq tours pour finalement retomber après un parcours hexagonal sur le nœud de départ où seules quatre directions sont possibles, puisqu'une cinquième a déjà été empruntée par le ver Si le ver a tourné de 120° à gauche ou à droite, il retombe sur le nœud initial au bout de deux tours et là aussi, seules quatre directions sont possibles. Dans les deux derniers cas, il est nécessaire de définir une direction que le ver va prendre parmi les quatre possibles. Ensuite, on procède à chaque nœud de la manière suivante : Si la situation a déjà été rencontrée par le ver, il se déplace comme il l'a fait dans cette situation Si la situation est inédite, on choisit une direction. Elle sera ensuite utilisée à chaque fois que la même situation se produira Si le ver arrive sur un nœud dont toutes les directions ont déjà été utilisées, il s'arrête. Le programme est lent [EDIT : seulement celui où on peut zoomer] : Si vous regardez dans le programme et que vous faites quelques tests vous verrez que l'unique chose qui ralentit tout est : Repeat B=A+1 If L2(B)=X-Q and L3(B)=Y:1->I If L2(B)=X-R and L3(B)=Y+S:1->C If L2(B)=X+R and L3(B)=Y+S:1->E If L2(B)=X+Q and L3(B)=Y:1->F If L2(B)=X+R and L3(B)=Y-S:1->G If L2(B)=X-R and L3(B)=Y-S:1->H B+1->B End J'ai BEAUCOUP réfléchi, je n'ai vu aucun moyen d'accélerer cette partie; J'ai pensé et testé avec des pxltest( mais cela ne fonctionne pas [EDIT : si j'en ai fait un avec mais on ne peut pas zoomer :/], avec des matrices c'est bien plus compliqué que cela en a l'air, mais si jamais 1) vous téléchargez ce programme (déjà assez exceptionnel) 2) que vous lisez ceci (encore plus rare) 3) que vous vous intéressez à cela, 4) que vous comprenez mon programme (les annotations sur les feuilles aident beaucoup) et 5) que vous avez les compétences pour l'améliorer... faites-le !! Et envoyez moi un message sur TI Planet à UnCurieux pour que je voie que les miracles existent ;)