Laby, niveau 2d: Le Zig-Zag des cailloux#
Un nouveau zig-zag, mais cette fois avec des cailloux, et c’est à vous de rédiger l’intégralité du programme. Inspirez-vous bien sûr des deux niveaux précédents!
Indications :
Définissez deux fonctions.
Chaque fonction doit être définie dans une cellule dédiée. Pour insérer une nouvelle cellule, vous pouvez par exemple utiliser l’icône + de la barre d’outils.
Niveau précédent, Niveau suivant, Documentation
#include <laby/global_fr.hpp>
LABY("2d")
/// BEGIN SOLUTION
void avance_tant_que_tu_peux() {
while ( regarde() == Vide ) {
avance();
}
}
/// END SOLUTION
/// BEGIN SOLUTION
void avance_tant_que_tu_peux_cailloux() {
while ( regarde() == Caillou ) {
prend();
avance();
gauche();
gauche();
pose();
gauche();
gauche();
}
}
/// END SOLUTION
debut();
/// BEGIN SOLUTION
avance_tant_que_tu_peux_cailloux();
gauche();
avance_tant_que_tu_peux_cailloux();
gauche();
avance_tant_que_tu_peux();
droite();
avance_tant_que_tu_peux_cailloux();
droite();
avance_tant_que_tu_peux_cailloux();
droite();
avance_tant_que_tu_peux();
droite();
avance_tant_que_tu_peux_cailloux();
/// END SOLUTION
ouvre();
CHECK( a_gagne() );