Bonjour à tous, je suis en terminal S et j'ai pris l'option informatique, je dois présenter mon projet pour dans un peu plus d'1 semaine et il est encore loin d’être finalisé,
Le projet consiste à faire sortir un robot de n'importe quel labyrinthe possédant une sortie, et l'on programme cela sur Rurple (plus simple),
L'algorithme de Pledge consiste à compter les changements de direction en augmentant d’un point lorsque l’on tourne à gauche et en diminuant d’un point lorsque l’on tourne à droite. Au début, le décompte est à zéro. Les deux instructions sont alors :
1) Aller tout droit jusqu’au mur, passer à l'instruction 2 ;
2)Longer le mur par la droite (ou par la gauche, mais toujours dans le même sens) jusqu’à ce que le décompte des changements de direction atteigne zéro, passer à l'instruction 1 ;
Voila notre algorithme :
def droite():
gauche()
gauche()
gauche()
return 1
def Gauche():
gauche()
return 1
def demitour():
gauche()
gauche()
avance()
a=0
while not bille_en_poche():
if a==0:
if not mur_devant():
avance()
elif mur_devant():
if not mur_a_droite():
a=a-droite()
avance()
if not mur_a_gauche():
a=a+Gauche()
avance()
elif demitour():
avance()
elif a==-1:
gauche()
avance()
Le fait est que l'on ne parvient pas à faire longer le mur à notre robot, bref c'est très mal barrer et j'aimerai avoir vos avis, conseils sur la tête de mon code et sur la manière de l'améliorer.
Merci d'avance ! 