300000
English | Français | فارسی | 中文 | Українська | Azerbaijani | ខ្មែរ | Tiếng Việt | Bahasa Melayu | Deutsch | O'zbek | РусскийTurtle Walk
Nombre de victoires: 213158
Qu'est-ce que Blockly?
Blockly est un langage de programmation visuel. C'est un outil qui facilite l'apprentissage de la programmation, de savoir coder correctement. Pour plus d'informations sur Blockly, consultez le site des Développeurs Google.
Comment jouer à la Marche de la Tortue?
Le but est de créer un code qui guidera la tortue vers son étang. Pour ce faire, vous déplacerez des blocs de la boîte grise à gauche vers le plan de travail blanc. Ensuite, vous devez cliquer sur le bouton « Exécuter » pour exécuter les blocs d'instructions empilés sous le bloc « Début » . Cliquez sur le bouton Solution pour voir une des solutions possibles (mais pas forcément la plus efficiente!).
Comment gagner à la Marche de la Tortue?
Vous gagnez lorsque la tortue arrive dans son étang grâce à votre code. Le jeu est d'autant plus difficile lorsque vous devez accomplir ceci avec un nombre limité de blocs.
Pour les Débutants
C'est quoi le code?
« Le code » informatique peut sembler difficile, mystérieux, voire effrayant, mais c'est faux!
Au fait, il est même très probable que vous utilisez du code tout le temps. Si vous avez déjà utilisé une appli, joué à un jeu sur un écran, cliqué sur un bouton, alors vous avez utilisé du code. Le code, c'est tout simplement un ensemble d'instructions que votre appareil (mobile, tablette, ordinateur, console de jeu vidéo) sait lire et suivre.
Blockly vous permet de coder et de jouer avec des principes de codage tels les variables, les fonctions, les boucles, et ainsi de suite. Ce sont les mêmes concepts qu'utilisent les informaticien(nes) et les développeurs d'applis / de jeux tous les jours.
Qu'est-ce qui fait qu'un code soit « bon »?
Tout d'abord, un code est bon lorsqu'il fait ce qu'on veut qu'il fasse! Ceci fait qu'il est « correct ». Pour la Marche de la Tortue, votre code est « correct » lorsqu'il guide la tortue vers l'étang. Cependant, il existe plus d'une façon « correcte » d'y arriver. Disons par exemple que la tortue doit parcourir un chemin droit pour arriver à l'étang.
Voici un code correct:
Début :
⇧ avancer ⇧
⇧ avancer ⇧
⇧ avancer ⇧
⇧ avancer ⇧
⇧ avancer ⇧
Ce code est-il correct?
Oui, la tortue arrivera à l'étang, alors le code est correct.
Est-ce que c'est le meilleur code pour cette tâche?
Bien sûr que non. Un bon code doit aussi être efficient : il doit accomplir la tâche en le nombre minimum de blocs, c'est-à-dire avec le moins de code possible. Si possible, la tortue devrait prendre le chemin le plus direct. Pour l'instant il n'y a qu'un chemin à suivre, mais comme on le verra sous peu, il existe parfois plusieurs réponses.
Comment faire la même tâche avec moins de blocs?
Le bloc boucle fera répéter tout ce que vous mettez là-dedans, et autant de fois que vous voulez.
Comment utilise une boucle pour arriver au même résultat?
Un meilleur code ressemblera à ceci :
Début :
↺ répéter 5 fois ↺
⇧ avancer ⇧
Ce code est supérieur au code précédent. Est-ce que vous voyez en quoi il est meilleur? Supposez par exemple qu'au lieu de se situer à 10 pas de la tortue, l'étang se trouve à 100 pas de distance.
Que faut-il modifier pour que la tortue avance de 100 pas au lieu de 10?
Au lieu de faire glisser et empliler 90 fois le bloc « avancer », il n'y a qu'une chosie à modifier: le nombre dans le bloc boucle. Alors ce code est meilleur pas seulement parce qu'il est correct et éfficient, mais aussi parce qu'il est plus facile à adapter.
Début :
↺ répéter 100 fois ↺
⇧ avancer ⇧
Quel type de bloc boucle sera encore plus facile d'adapter que le bloc boucle « répéter »?
Le bloc boucle « faire jusqu'à » est encore plus facile à adapter. Que ce soit pour avancer de 5 pas ou avancer de 1000 pas, le code sera identique.
Début :
↺ jusqu'à l'étang ↺
⇧ avancer ⇧
Encore un exemple: Comment améliorer ce code?
Ici, la tortue doit monter un « escalier » pour arriver à l'étang. Ici-bas se trouve un code pour le guide jusque-là. C'est un code correct mais il n'est pas très bon. Pouvez-vous l'améliorer? Pour rappel, un bon code sera correct, efficient, et facile à adapter.
Début :
⇧ avancer ⇧
← tourner à gauche ←
⇧ avancer ⇧
↑ tourner à droite ↑
⇧ avancer ⇧
← tourner à gauche ←
⇧ avancer ⇧
↑ tourner à droite ↑
⇧ avancer ⇧
← tourner à gauche ←
⇧ avancer ⇧
Réponse
Dans le code donné, on répète plusieurs fois les blocs « avancer + tourner à droite + tourner à gauche ». Le code sera moins long et plus efficient si on regroupe ces blocs dans une boucle.
Début :
↺ jusqu'à l'étang ↺
⇧ avancer ⇧
← tourner à gauche ←
⇧ avancer ⇧
↑ tourner à droite ↑
Comment adapter ce code?
Voici un escalier légèrement différent. Comment adapter votre code pour l'appliquer ici?
Réponse
Vous pouvez garder votre ancien code: il fera la même chose, et la tortue atteindra quand même l'étang. Dans ce cas, la tortue essayera de monter vers le haut, elle foncera dans un mur, puis elle continuera. Ce chemin qu'emprunte la tortue n'est pas très direct, car elle essaie à chaque fois de monter vers le haut mais est bloquée par le mur. Pour améliorer le code, vous pouvez rajouter « avancer » deux fois dans la boucle tel que montré ci-dessous. Comme vous pouvez le voir, dans cette version, le code plus court n'est pas nécessairement la meilleure solution, car la tortue met plus de temps à atteindre l'étang.
Début :
↺ jusqu'à l'étang ↺
⇧ avancer ⇧
⇧ avancer ⇧
← tourner à gauche ←
⇧ avancer ⇧
⇧ avancer ⇧
↑ tourner à droite ↑
Sommaire
Expérimentez et amusez-vous à coder avec Blockly! Veillez à créer de bon code qui soit correct, efficient, et facile à adapter.
Stratégie Générale
Commencez par programmer le chemin avec des instructions directionnelles simples (c.-à-d. avancer, tourner).
Ensuite, relisez votre code pour regrouper des séquences d'instructions répétées en boucles. Si les séquences sont similaires mais pas identiques, vérifiez si on peut rajouter des instructions supplémentaires à la séquence plus courte sans avoir d'effet, par exemple en faisant foncer la tortue dans le mur, de façon à ce que ces séquences maintenant égales peuvent se remplacer par la même boucle, exécutée autant de fois que nécessaire.
Boucles
Il y a 2 types de blocs boucle dans le jeu La Marche de la Tortue.
Répéter [X] fois
La boucle est exécutée un nombre fixe, n'importe ce qui se passe pendant son exécution.
Jusqu'à l'étang, faire...
La boucle est exécutée jusqu'à ce que la tortue atteigne l'étang.
Emboîtement
Dans un boucle vous pouvez emboîter d'autres boucles, voire des fonctions différentes telles qu'une condition Si...Alors... (Sinon...) .
Astuces pour Réduire le Nombre de Blocs
Pour construire un code meilleur et plus efficient, essayez les conseils suivants (Cliquez pour voir des exemples) :
Si les instructions se répètent, regroupez-les dans une boucle.
Dans la Marche n° 3, comment pouvez-vous utiliser une boucle pour réduire le nombre de blocs utilisés?
Utilisez une boucle pour répéter les instructions « avancer + tourner à gauche + avancer + tourner à droite ».
Déplacez-vous en Spirale
La Marche n° 8 peut être résolue en 4 blocs. Comment?
Pour atteindre l'étang, la tortue ne doit qu'avancer et tourner à droite, et ces instructions peuvent s'emboîter dans une boucle. Peu importe si la tortue tourne d'abord à droite et essaie de foncer dans le mur lors de la première itération de la boucle : la prochaine fois qu'elle tourne à droite, elle pourra avancer. On peut comparer ce mouvement à une spirale ou circonvolution, tournant toujours dans un sens (à droite ou à gauche) en avançant.
Déplacez-vous en Escalier
La Marche n° 9 peut être résolue en 5 blocs. Comment?
La tortue doit se déplacer du coin inférieur droit au coin supérieur gauche. Elle ne peut pas marcher directement en diagonale alors il faut qu'elle suive un chemin en forme d'escalier (dans ce cas vers la gauche, le haut, la gauche, le haut). Même si le chemin à suivre n'est pas un escalier parfait, le code est correct. Pour rappel, il n'est pas important si la tortue fonce dans le mur.
Utilisez les Spirales et les Escaliers en Combinaison
La Marche n° 12 peut être résolue en 9 blocs. Comment?
En premier, suivez un chemin en forme de « spirale », c'est-à-dire, à l'intérieur d'une boucle tournez dans un sens (à droite) et avancez autant que possible (choisissez un nombre élévé, par exemple 5 -- encore une fois, il ne fait aucun mal à la tortue de foncer dans un mur).
Ensuite, la tortue peut suivre un chemin en forme d' « escalier », même si le chemin restant pour atteindre l'étang n'est pas un escalier parfait. Faites déplacer la tortue vers la gauche et vers le haut de manière répétée pour qu'elle atteigne l'étang.
Utilisez les blocs « Si chemin... ».
La Marche n° 5 peut être résolue en 4 blocs. Comment?
Combinez le bloc « faire jusqu'à l'étang » avec le bloc « si chemin vers la droite » pour que la tortue tourne à droite lorsqu'elle peut mais continue d'avancer dans le cas contraire.
De Divers Défis
Essayez plusieurs défis parmi le grand nombre de Marches disponibles. Certaines d'entre elles n'ont qu'un seul couloir, d'autres se ramifient avec plusieurs routes à suivre. Certaines inclusent même des pièges et des portes communicantes, des clés pour ouvrir les portes, des espaces ouverts pleins d'obstacles, ou des labyrinthes à naviguer pour atteindre son but.
Certaines Marches ressemblent à des Labyrinthes
Par exemple, les Marches n° 36, 44, 48 sont des labyrinthes très simples.
Imaginez qu'on vous transporte dans un labyrinthe où les murs qui vous entourent vous bloquent la vue -- quelle est une stratégie que vous pouvez employer pour trouver la sortie?
Une stratégie simple consiste à suivre soit le mur droit soit le mur gauche.
Comment construire une telle stratégie avec le codage?
Indice : Vous pouvez coder une telle stratégie en 6 blocs, on vous confie la tâche de les trouver.
Pour certaines Marches, le fait de suivre un mur guide la tortue vers un piège alors que l'autre mur la mène à l'étang, ex. Marche n° 44.
Quand est-ce que cette stratégie échoue complètement?
Un exemple est la Marche n° 10. Que la tortue suive le mur droit ou le mur gauche, elle ne trouvera jamais l'étang.
Comment décrire le problème de manière mathématique?
Cette méthode échoue lorsqu'il y a une boucle fermée et que la tortue est à l'intérieur de la boucle et l'étang à l'extérieur, ou l'inverse. Dans ces deux cas, la tortue n'atteindra jamais l'étang en suivant un mur.
Qu'est-ce qu'on peut faire si cette stratégie échoue?
Dans ces cas, vous pouvez effectuer d'autres étapes avant de suivre un mur, ou changer le mur suivi, ou suivre un mur avant de passer à d'autres étapes pour retrouver l'étang.
Répérez-vous des Marches qui peuvent être résolues de cette manière?
Suivez ou abonnez-vous à l'Infolettre