Coding for KidsCoding for Kids
Niveaux CréatifsDéfisGuide de l'Enseignant
Voter pour les fonctionnalités
Cours avancé de développement Python
Chapitre
>
Niveau

Listes avancées
Tri des ensembles

Objectif

Organisez et cuisinez des repas en utilisant des Sets pour trier et composer les ingrédients.

Il serait judicieux de commencer à préparer de la nourriture, il y a quelques ingrédients dans le frigo, tous emballés, ainsi que quelques herbes que vous pourriez utiliser pour donner du goût au plat. Tous les matériaux sont stockés dans des listes, donc il serait bon d'utiliser des Sets afin de consolider les éléments et d'optimiser votre cuisine.

Il y a trois (3) constantes de listes, dont deux (2) sont des viandes, nommées : pack1 et pack2, et une (1) est des matériaux de cuisson, nommée ingredients. Marchez jusqu'au X sombre sur le tapis orange et faites face au frigo, utilisez la fonction collect() pour prendre pack1 et pack2 du frigo, comme ceci : player.collect(pack1).

Une fois la viande collectée, marchez jusqu'au X clair et faites face à la planche à découper. Ici, nous vérifierons le contenu des paquets en utilisant la fonction speak() avec les deux constantes de listes que vous avez collectées. À partir de là, nous consoliderons les éléments en utilisant des Sets comme au niveau précédent. Créez deux Sets nommés set1 et set2, et en utilisant la fonction set() attribuez-leur respectivement pack1 et pack2, par exemple : set1 = set(pack1).

Une fois que les listes ont été consolidées en Sets, il est temps de trier et de compartimenter les éléments en Sets plus petits pour plus de commodité.

La première méthode pour y parvenir s'appelle systemic_difference, cela nous permettra de séparer les éléments qui ne sont pas partagés entre chaque Set. Créez un Set appelé unique et utilisez les deux Sets pour comparer et identifier les éléments uniques en utilisant systemic_difference, comme ceci : unique = set1.symmetric_difference(set2). Utilisez la méthode speak() avec le Set que vous avez créé pour confirmer le contenu du set.

Ensuite, poursuivez le tri en créant un Set appelé shared et utilisez la méthode intersection apprise au niveau précédent pour identifier les éléments présents dans les deux Sets. Utilisez les deux Sets pour comparer et identifier les éléments, comme ceci : shared = set1.intersection(set2). Utilisez la méthode speak() avec le Set que vous avez créé pour confirmer son contenu.

Enfin, utilisez une méthode appelée difference, cela nous permettra de séparer les éléments qui se trouvent uniquement dans un Set et pas dans l'autre. Créez deux (2) Sets appelés meat1 et meat2, utilisez les deux Sets originaux pour comparer et identifier les éléments en utilisant difference, comme ceci : meat1 = set1.difference(set2) et meat2 = set2.difference(set1). Utilisez la méthode speak() avec chacun des Sets de viande que vous avez créés pour confirmer le contenu de chacun.

Les viandes étant désormais triées, marchez jusqu'au X sombre au-dessus du tapis bleu, faites face au frigo et utilisez la fonction place() pour ranger le Set shared que vous avez créé, comme ceci : player.place(shared). Ainsi, vous mettrez de côté les ingrédients que vous ne cuisinez pas.

Marchez jusqu'au X doré, faites face au cabinet et utilisez la fonction collect() pour récupérer la dernière constante de liste nommée ingredients et utilisez la fonction speak() pour confirmer son contenu.

Transférez les éléments de ingredients vers un nouveau Set nommé set3.

Maintenant que vous avez tous les ingrédients, créez deux Sets, nommés meal1 et meal2, en utilisant la méthode union pour combiner tous les éléments nécessaires à la cuisson.

Pour meal1, combinez set3 et meat1 de cette manière : meal1 = set3.union(meat1). Marchez jusqu'au X sombre sur le tapis violet et, avec le Set meal1, utilisez la fonction speak() pour confirmer le contenu et la fonction place() pour cuisiner le plat dans la marmite.

Pour meal2, faites de même, mais utilisez la méthode union avec set3 et meat2. Marchez jusqu'au X sombre sur le tapis jaune, faites face à la marmite et utilisez les fonctions speak() et place() avec meal2 pour terminer le niveau.

Livre de Code