Programmation pour débutants avec des blocs
Chapitre 6
>
Niveau 3
Objectif
Vérifiez si des ingrédients sont stockés dans des conteneurs et combinez-les pour préparer de la nourriture.
Vous avez besoin de plusieurs ingrédients pour pouvoir préparer une salade, mais vous devez d’abord les récupérer. Vous trouverez carottes, tomates, laitue et concombres dans le champ ; carottes et concombres sont cependant rangés. Récupérez les éléments que vous pouvez attraper dans le jardin à droite.
Pour trouver les éléments manquants, dirigez-vous vers les marques dorées en forme de X situées devant les conteneurs et testez les conditions pour vérifier si les éléments sont stockés dans un conteneur. Une fois à la marque dorée en forme de X, tournez à gauche face au couloir afin d’exécuter une boucle. Utilisez un bloc de boucle for pour rendre le processus plus rapide et plus efficace pour collecter les éléments ; activez le bloc désactivé dans l’éditeur de blocs.

Les caisses dans la réserve contiennent des éléments, représentés par la constante de liste bag, qui comporte quatre (4) éléments, un pour chaque caisse. Utilisez le bloc de boucle for avec une variable x allant de 0 à 4. À l’intérieur de la boucle, vous disposez de deux blocs if pour vérifier si "carrot" ou "cucumber" figurent dans la constante bag.

Faites glisser (drag & drop) le bloc in list depuis le menu lists dans le bloc comparison à l’intérieur du bloc if. Insérez la constante de liste bag dans la première case pour vérifier si les éléments se trouvent dans les caisses, réglez le premier menu déroulant sur get et le second sur #. Enfin, insérez la variable x depuis le menu Variables et placez-la dans la dernière case. Cette séquence de blocs permet de parcourir la liste bag en fonction du nombre de cycles décrits par la variable x, qui correspond à la caisse devant laquelle vous vous trouvez.

Cette séquence de blocs in list sera utilisée quatre (4) fois dans les deux blocs if. Dans le premier bloc if, placez le bloc in list dans le bloc comparison réglé sur = et écrivez dans le bloc string le mot “cucumber”. Dans le bloc collect, insérez un autre bloc in list pour collecter un concombre s’il est présent dans la caisse.

Dans le second bloc if, appliquez la même structure que dans le premier, mais écrivez “carrot” dans le bloc string. Ces deux blocs if à l’intérieur de la boucle for feront parcourir à votre personnage les quatre (4) caisses, vérifiant si chacune contient “cucumber” ou “carrot” et les collectant.

Une fois que vous avez collecté tous les éléments, stockez-les dans une liste nommée items à l’aide du bloc create empty list. Pour cela, utilisez un bloc set variable, ajoutez la variable items et insérez le bloc create empty list depuis le menu lists.

Dans l’éditeur, des blocs insert list sont désactivés pour insérer des éléments dans la liste items. Activez-les et insérez des valeurs numériques correspondant aux éléments que vous avez récupérés en modifiant la bulle de numéro à la fin du bloc. L’ordre des éléments est le suivant : “carrots”, “tomato”, “lettuce”, “cucumber”. Insérez les valeurs correspondantes à chacun.

Enfin, rendez-vous à la marque X lumineuse et combinez tous les éléments pour préparer un repas à l’aide du bloc combine. Insérez la liste items dans le bloc combine afin de placer tous les légumes dans le contenant à salade et terminer le niveau.