Leçon 5:

Les déplacements du robot

 

Une case du terrain est repérée par ses coordonnées (x, y); x et y sont des nombres entiers positifs.

Position du robot

La position du robot est donnée par les deux mots-clef xRobot et yRobot. Pendant l'exécution, xRobot et yRobot ont les valeurs x, y de la case occupée par le robot. Dans l'exemple ci-dessus, xRobot = 3 et yRobot = 6.

Direction du robot

La direction suivant laquelle le robot est orienté est donnée par les deux mots-clef dxRobot et dyRobot. Les valeurs de dxRobot et dyRobot correspondent à la variation de xRobot et de yRobot quand le robot avance d'une case devant lui:

  • si le robot est tourné vers la droite du terrain: dxRobot vaut 1 et dyRobot vaut 0
  • si le robot est tourné vers la gauche du terrain: dxRobot vaut - 1 et dyRobot vaut 0
  • si le robot est tourné vers l'avant du terrain: dxRobot vaut 0 et dyRobot vaut 1
  • si le robot est tourné vers l'arrière du terrain: dxRobot vaut 0 et dyRobot vaut - 1

Dans l'exemple ci-dessus, dxRobot vaut 1 et dyRobot vaut 0.

Comme on peut le remarquer, dxRobot et dyRobot n'ont comme valeurs possibles que 0, 1 et -1. L'une des deux valeurs est nulle et l'autre non nulle

 

TRAVAIL A FAIRE

  • Ecrivez un programme qui oriente le robot vers la gauche, quelle que soit son orientation initiale.
    Sauvegardez ce programme sous le nom SOrienterAGauche.
 

TRAVAIL A FAIRE

  • Vous utiliserez pour ce deuxième exercice le terrain Terrain9x9SansObstacles défini à la leçon 3.
  • Ecrivez un programme qui déplace le robot sur une case quelconque de la colonne centrale (x=5), quelles que soient sa direction et sa position initiales.
  • Sauvegardez ce programme sous le nom AllerColonneCentrale.