Le python landais

Pour introduire la boucle While.


L'écran de Reeborg est constitué de deux parties :

reeborg

Votre mission (si vous l'acceptez !) :
écrire un programme faisant réaliser à Reeborg le tour de son monde.
Ce programme devra pouvoir fonctionner, sans aucune modification, dans n'importe quel monde rectangulaire :
reeborg reeborg reeborg


1) Commençons par sélectionner la langue (français), à l'aide du menu déroulant (se trouvant tout en haut à droite de l'écran).

2) Saisir la commande "avance()" dans la zone de scripts, et lancer l'exécution (en cliquant sur le bouton "lecture" en haut à gauche).


3) Et encore :
Reeborg sait ainsi remplir différentes fonctions, parmi lesquelles :
  • avance() : avancer d'une case.
  • tourne_a_gauche() : tourner à gauche sur place.
  • rien_devant() : regarder s'il y a un obstacle devant lui(un mur, par exemple). La fonction "rien_devant()" renvoyant alors une variable booléenne qui vaut vrai s'il n'y a rien devant, faux sinon.

  • Notons qu'il faut bien penser aux parenthéses vides pour que l'action soit exécutée.

    Par ailleurs, on peut éviter d'avoir à taper ces fonctions en cliquant sur "Clavier de Reeborg". Il suffit alors de cliquer sur la fonction voulue.

Tester le résultat de ces fonctions en écrivant des petits programmes à réaliser pour Reeborg.

Remarque : pour constater le résultat renvoyé par "rien_devant()", on pourra utiliser : print(rien_devant()).


4) Reeborg sait aussi répéter plusieurs fois les mêmes lignes de code. Pour demander à Reeborg d'effectuer une certaine action tant qu'il n'y pas de mur devant, nous utiliserons un algorithme du type :
Tant que rien_devant() :
    action()
Ce qui se traduit en Python par :
while rien_devant() :
    action()


L'instruction while permet de répéter une action ou des lignes de code tant qu'une certaine condition est vérifiée.

Les lignes à répéter :
  • sont introduites par deux points à la fin de la ligne du while,
  • signalées par une indentation de quatre espaces en début de ligne.
  • La fin de la partie de code à répéter est signalée par l'arrêt de l'indentation.



3) Ecrire un programme permettant à Reeborg de parcourir tout le côté inférieur du rectange de son monde.

4) Compléter le programme précédent pour qu'après avoir fait tout le côté inférieur, Reeborg fasse un quart de tour à gauche.

5) Compléter enfin le programme précédent pour que Reeborg fasse tout le tour du rectangle de son monde.
Contrainte d'optimalité : 6 lignes de code suffisent.