Il est maintenant temps d'écrire la seconde fonction nécessaire pour les
tours de Hanoï tricolores. La fonction gather()
construit une
pile interclassée à partir de piles séparées (gather veut dire «rassembler»
en anglais). Cette fonction prend quatre arguments, le dernier étant le
numéro du piquet où il faut construire la pile interclassée. Comme vous
pouvez voir dans les exemples, l'ordre des couleurs doit être le même pour
tous les triplets de disques.
Cette fonction utilise la fonction move3()
que vous venez
d'écrire. Faites un copie/colle de votre code pour le réutiliser ici. Si
vous avez besoin de plus d'explications, référez vous à l'exercice des tours
interclassées. Rassembler 3 piles sur 3 piquets est assez similaire à
rassembler 2 piles sur 4 piquets. Vous trouverez cet exercice ici.