Leçon 4 :Conditions logiques et tests |
Une condition logique est une expression donnant un résultat
vrai ou faux. On peut en particulier combiner différents mots-clef
avec les opérateurs logiques Et, Ou,
Non, par exemple: (MurEnFace Et MurADroite) Ou Non MurAGauche.
Vous trouverez
une description détaillée dans la documentation, chapitre langage
du robot, rubriques fonctions prédéfinies et expressions.
La documentation s'affiche avec le menu Aide > Documentation. Pour
l'instant, il vous suffit de connaître trois conditions: MurEnFace,
MurADroite, MurAGauche.
Dans l'organigramme, un bloc test a cette forme:
Pour modifier le texte contenu dans un bloc test, il faut choisir l'outil
sélection
et faire un double-clic sur le bloc.
La condition logique contenue dans le bloc test est évaluée
quand le bloc est exécuté. Le résultat peut être
vrai ou faux. Si le résultat est vrai, l'exécution se poursuit
après la sortie marquée O (oui ou vrai); si le résultat
est faux, l'exécution se poursuit après la sortie marqué
N (non ou faux).
Dans l'exemple ci-dessous, on utilise la condition logique MurEnFace.
C'est un mot-clef du langage du robot qui fournit un résultat
de type logique (vrai ou faux) en fonction de la position du robot au moment
où elle est évaluée. Si le robot est en face d'un mur,
le programme s'arrêtera, sinon le robot avancera et recommencera le test.
Pendant l'exécution d'un programme, vous pouvez cliquer sur le bouton
Pause
dans la fenêtre exécution, puis faire exécuter les
instructions les unes après les autres en cliquant sur le bouton Exécution
pas à pas .
Vous pouvez aussi afficher l'état courant du robot en cliquant sur le
bouton Afficher l'état .
Vous verrez alors apparaître une liste contenant en particulier des mots-clef
utilisables dans les tests.
Vous
trouverez la liste complète des mots-clefs dans le document accessible
par le menu Aide > Résumé du langage du robot
Dans cet exercice, vous allez essayer d'atteindre l'objectif
Aller dans un coin(n'importe lequel, mais si le robot se trouve dans
un coin au début du programme, il doit aller dans un autre coin). Vous utiliserez le terrain Terrain9x9SansObstacles défini
à la leçon 3. Attention! Votre programme doit fonctionner sans erreur d'exécution, quelles que soient la position et la direction initiale du robot. A vous de trouver les situations initiales à problèmes. |
Vous disposez maintenant des opérateurs logiques "ou", "et",
"non", "mur en face", "mur à droite", "mur
à gauche".
Vous devez déplacer votre robot dans un coin (n'importe lequel, mais
si le robot se trouve dans un coin au début du programme, il doit aller
dans un autre coin). Le terrain est entouré de murs, mais il n'y a pas
de murs sur le terrain. Attention! Votre programme doit fonctionner sans erreur
d'exécution, quelles que soient la position et la direction initiale
du robot. A vous de trouver les situations initiales à problèmes.