Notions de programmation avancée.
Retourner à la page d'accueil >>
Voir la page de téléchargement des fiches d'activités >>
Les informations qui suivent dans ce paragraphe sont données de façon formelle pour les enseignants. Elles ne doivent en aucun cas être évoquées en présence des élèves des cycles 2 et 3 (Il ne s’agit donc pas encore une fois de faire de l’informatique pour elle-même) sauf de la manière la plus intuitive et la plus pratique possible dans le cadre de la mise en œuvre des compétences scolaires. L’enseignant(e) trouvera ci-dessous des connaissances qui faciliteront son travail d’aide pour les élèves qui, malgré les dispositifs de localisation des erreurs que LOGOPLUS lui propose ainsi que les messages d'erreur reçus, n’arriveraient pas à faire travailler leur texte.
1 a) Les noms de variable.
Les noms de variable doivent être utilisés soit après la primitive DONNE , soit après la primitive PARTAGE. Dans les deux cas, ces noms doivent être précédés du symbole ". Lorsqu’ils sont utilisés par la suite, ils doivent être précédés par le symbole : suivi ou non d’un espace (facultatif).
Remarque: les noms de variable ne doivent pas comporter au dedans de signes opératoires ou de signes particuliers ( : " ).
1 b) Les types de variable en LOGO.
Les types indiquent la nature précise de ce que contient le nom d’une chose (variable).Lors de la mise en œuvre d’un programme, on peut être amené à manipuler des nombres, des lettres, des listes de mots (phrases) : ce sont les types que peuvent prendre une variable.
La procédure suivante illustre ce que peuvent être les différents types de variable :
Au cours du déroulement de la procédure exemple, la chose "nom a changé successivement trois fois de type (numérique, liste, couleur). Même si cela est déconseillé, il est possible de le faire en LOGO, sous réserve de connaître précisément le type de chaque chose (variable) dans toutes les parties du programme lors de son déroulement. Comme il n’est pas obligé d’indiquer au préalable le type d’une variable en LOGO, cela crée parfois des messages d’avertissement lors de la compilation du texte-programme. Il faudra simplement veiller au contenu de chaque variable utilisée lors de son déroulement.
Il est possible de définir le type d’une variable grâce à la primitive DEFINIS (voir le catalogue), ce qui n’empêche nullement de modifier le type de cette variable au cours du déroulement du programme.
En LOGO, il y a cinq types de variable différents:
Type 1 : les mots.
Précédés et suivis de guillemets. Ex: DONNE "prénom "François
Type 2 : les listes.
Encadrées par les symboles de liste ‘[‘ et ‘]’.
Ex : DONNE "voyelles [ a e i o u ]
Type 3 : les nombres.
Ils interviennent aussi bien dans les primitives graphiques (AVANCE, RECULE …) que dans les calculs purement algébriques. A l’intérieur des expressions algébriques, les quantités ainsi que les résultats numériques doivent se situer entre +/- 9,22E18. Tout nombre situé à l’extérieur de ces intervalles occasionnera un message d’erreur "Chose trop grande. ".
Ex: DONNE "valeur 5,6E12
Type 4 : les booléens.
Peuvent être vrais ou faux.
Exemples :
Remarque : "valeur3 aura pour contenu VRAI, car 5 est bien égal à 3+2.
"valeur4 aura pour contenu FAUX.
Rappel : dans l’instruction DONNE, le nom d’une chose doit être précédé du symbole " (erreur de syntaxe).
Type 5 : les couleurs.
Ex : DONNE "UneCouleur VERTE
Remarque: le type couleur peut prendre l’une des dix-sept valeurs suivantes : VERTE, ROUGE, BLEUE, JAUNE, BLANCHE, NOIRE, FUCHSIA, SARCELLE, TILLEUL, ROSE, ORANGE, MARRON, EAU, GRISE, OLIVE, ARGENT, VIOLETTE.
1 c) Portée d’une variable.
Toutes les variables déclarées à l’intérieur d’une procédure ne sont valables qu’à l’intérieur de cette procédure, sauf si elles figurent dans la liste des variables partagées (voir le mot-clé PARTAGE dans le catalogue) auquel cas ces variables sont autorisées dans tous les procédures situés après ce niveau. La portée d’une variable fixe la zone du programme sur lequel elle est définie.
Exemple :
Lire le paragraphe des variables >>
2) Les messages d’avertissement ou d’erreur.
Les messages d’avertissement ou d’erreur apparaissent dans une petite fenêtre prévue à cet effet.
Lorsque la fenêtre de l’éditeur est visible, un simple clic de la souris sur la ligne correspondant au message occasionne la mise en inversion vidéo du mot ou passage erroné dans le texte-programme.
L’élève (ou l’enseignant(e)) peut ainsi connaître presque immédiatement où se situe l’erreur commise et la corriger dans l’éditeur.
a) Les messages d’avertissement.
Les messages d’avertissement correspondent à des zones du texte qui peuvent se révéler être des erreurs lorsque LOGO tente de le faire travailler: une chose (variable) mal définie, un calcul qui peut se révéler impossible, etc… . L’élève est prévenu : il pourra faire travailler son texte mais un mauvais déroulement du programme peut survenir à cette occasion, entraînant du même coup un résultat erroné ou pas de résultat du tout (arrêt du programme).
Les messages d’avertissement font presque toujours référence au type d’une chose et commencent toujours par le mot "Avertissement". Ils préviennent soit:
- que LOGO ne sait pas quoi faire avec une consigne.
- que le type d'une expression n'est pas approprié.
Lire les messages d'erreur ou d'avertissement. >>
Les messages d’erreur commencent toujours par l’expression "Ne comprends pas" . Cela signifie que le texte-programme rédigé par l’élève ne peut pas faire l’objet d’un travail exécutable par LOGO. L’élève devra donc corriger ses erreurs et faire apprendre son texte à LOGO une nouvelle fois.
b.1) Les erreurs déclenchées sous éditeur:
Les erreurs formelles (de syntaxe):
Elles commencent toujours par "Ne comprends pas" ou "LOGO ne comprend pas".
Un coup d’œil sur le catalogue des mots-clés ou sur le passage précis du texte où se situe l’erreur permet d’y remédier. Elles signalent soit:
Les erreurs logiques:
Un coup d’œil sur un texte-programme permet presque toujours de remédier à la plupart de ces erreurs. Si cela ne fait pas disparaître l’erreur, il sera alors nécessaire de revoir la construction du programme.
Elles commencent elles aussi par "Ne comprends pas" ou "LOGO ne comprend pas".
Elles signalent soit:
Il aurait fallu écrire:
SI ( :n=5) [AVANCE 10 TOURNEDROITE 90]
nom de chose non permis. (Ex : DONNE "AVANCE 50)
nom de lutin non permis.
Remarque: les noms de lutin ne doivent pas comporter de signes opératoires ou de signes particuliers ( : " ).
Les erreurs d’exception.
Elles sont précédées du mot SYS (système) et apparaissent souvent lors d’appels récursifs sans critères d'arrêt :
SYS : Il n’y a plus assez de place en mémoire pour effectuer les calculs restants.
SYS : Il n’y a plus assez de place en mémoire pour appeler les procédures restantes.
Lire les messages d'erreurs >>
Lire les messages d'erreur ou d'avertissement. >>
Télécharger la page Programmation au format pdf >>
Pour observer des créations graphiques en LOGO >>
Voir la page de téléchargement des fiches d'activités >>
Retourner à la page
d'accueil >>