Le robot sait compter
 
  Expressions numériques
  Affectation d'une valeur à une variable
  Utilisation de variables dans un programme
  Retour au sommaire du tutoriel
   
Variables
 

Les données manipulées par un programme sont stockées dans la mémoire de l'ordinateur. Pour accéder à la zone de mémoire correspondant à une donnée, le programmeur associe une variable à la donnée.

  * Le nom d'une variable est défini par le programmeur. Ce nom permet à l'ordinateur de retrouver la donnée associée dans sa mémoire. Le nom correspond à l'adresse de la donnée dans la mémoire.
Un nom de variable est formé de lettres et de chiffres sans espaces et doit commencer par une lettre et contenir au maximum 32 caractères. Il doit être différent des mots-clef du langage du robot. Les lettres majuscules et minuscules sont considérées comme étant identiques.
  * La valeur d'une variable est le contenu de la zone de mémoire référencée par le nom de la variable.
* Dans RobotProg les variables sont définies pour l'ensemble du programme et des sous-programmes, les valeurs des variables sont des nombres entiers. Toutes les variables ont la valeur 0 au début de l'exécution du programme.
* Exemples : dans ce chapitre, nous déterminerons le nombre de pas effectués par le robot. Pour cela nous utiliserons une variable de nom nbPas.
Expressions numériques
 

Les expressions numériques sont des formules de calcul pouvant contenir des variables, des nombres entiers, des parenthèses et des signes d'opération. Le résultat du calcul est un nombre entier.
Exemple : en supposant que la variable nbPas contient la valeur 5, l'expression nbPas + 3 donnera comme résultat la valeur 8
Une expression numérique peut aussi contenir des fonctions numériques prédéfinies par des mots-clefs, comme DistanceMur qui donne le nombre de cases entre le robot et le mur en face de lui, ou bien xRobot et yRobot qui donnent la position du robot
Exemple : en supposant que le robot se trouve à 4 cases du mur en face, l'expression 2 * DistanceMur donnera comme résultat 8

Affectation d'une valeur à une variable
 

On change la valeur d'une variable avec l'instruction d'affectation qui a la forme suivante :
nom de la variable = expression numérique
Exemple : nbPas = DistanceMur
Quand l'instruction est exécutée, la valeur de l'expression est calculée, puis cette valeur est placée dans la variable dont le nom figure à gauche du signe =
Dans un organigramme, l'instruction d'affectation s'écrit dans un bloc affectation

 


Le signe = est utilisé dans de nombreux langages de programmation pour l'instruction d'affectation. Mais attention ce signe n'a pas la même signification que le signe = utilisé en mathématiques. On peut ainsi écrire une instruction de la forme suivante : nbPas = nbPas + 1
En supposant que nbPas a la valeur 5 avant l'exécution de l'instruction, l'expression nbPas + 1 est calculée, ce qui donne 6, puis ce résultat 6 est affecté à la variable nbPas : on a ainsi augmenté la valeur de nbPas d'une unité, cette opération s'appelle une incrémentation.
Utilisation de variables dans un programme
 

Ici vous allez écrire un programme qui déterminera le nombre de pas effectués par le robot.
Le robot se déplacera d'abord juqu'à un mur, puis tournera pour aller jusqu'à un autre mur.
Le principe est simple : à chaque fois que le robot avancera, on incrémentera la variable nbPas.
- L'affectation est utilisable à partir du niveau 4 : choisissez en conséquence un niveau supérieur ou égal à 4.
- Le terrain peut être quelconque.
- Ouvrez un nouveau programme et entrez l'organigramme suivant :

 


- Lancez l'exécution et cliquez sur le bouton "Montrer les variables" . Vous pourrez ainsi suivre l'évolution de la valeur de la variable nbPas pendant les déplacements du robot.
- Testez le programme pour différentes positions de départ, ce qui donnera un nombre de pas différent.

Ecrire un programme où le robot se déplace comme dans l'exemple précédent, mais où il détermine la distance parcourue en utilisant la fonction prédéfinie DistanceMur avant chacun des deux tronçons de son parcours
Distance à parcourir pour le premier tronçon : distance = DistanceMur
Distance totale déterminée avant le deuxième tronçon : distance = distance + DistanceMur

 

 

Retour au sommaire du tutoriel