Outils pour utilisateurs

Outils du site


kturtle:kturtle-activites-11

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
Prochaine révisionLes deux révisions suivantes
kturtle:kturtle-activites-11 [2020/01/08 07:45] – [Jouons avec les couleurs] crustkturtle:kturtle-activites-11 [2020/01/08 08:22] – [Navigation] crust
Ligne 1: Ligne 1:
 ====== La boucle if ====== ====== La boucle if ======
  
- +Je suis parti de l'observation de code, distribué sur feuille de papier et j'ai demandé aux élèves d'essayer de comprendre ce qu'il produisait comme effet.
-A taper mais on est parti de l'observation de code, distribuée sur feuille de papier et je leur ai demandé d'essayer de comprendre ce qu'il produisait comme effet.+
  
  
Ligne 28: Ligne 27:
 }</code> }</code>
  
 +==== Premier temps ====
 +Après 5 à 6 minutes de réflexion, phase de bilan, de mise au point. Globalement le second code est compris.
 +Et les retours sont du style "On demande à l'ordinateur si l'on est une fille ou un garçon..."
 +
 +Le mot SI est donc mis en évidence, on le note au tableau. Et on écris l'algorithme correspondant.
 +
 +Par contre, le premier code, on tâtonne mais le résultat n'est pas réellement compris.
 +
 +==== Second temps ====
 +Donc pour le premier code, direction PC, les élèves le tapent et le testent plusieurs avec des valeurs différentes.
 +
 +C'est plus simple pour eux pour déterminer la finalité de ce code.
 +
 +On retourne à une phase collectif qui reprend le code ligne par ligne et on réalise ensemble un algorithme de fonctionnement.
  
 ===== Jouons avec les couleurs ===== ===== Jouons avec les couleurs =====
Ligne 100: Ligne 113:
  
 Donc le programme final Donc le programme final
 +<code bash>
 reset reset
  
Ligne 123: Ligne 137:
  turnright 90  turnright 90
 } }
 +</code>
 +===== Allez plus loin =====
 +
 +  * Allez plus loin, en demandant de tester aussi avec les mots "rouge" et "ROUGE". De même pour les autres couleurs.
 +
 +  * Varier le programme avec une gamme de couleur plus importante
 +
 +===== Et le else ??? =====
 +
 +//**Inducteur : Demander de choisir la figure géométrique à tracer**//
 +
 +  * Si figure est un carré -> on trace un carré
 +
 +  * Si figure est un triangle -> on trace un carré
 +
 +  * Si figure est un rectangle -> on trace un carré
 +
 +  * SI figure est un losange -> on trace un losange
 +
 +<WRAP center round important 60%>
 +Les programmes s'étoffent, pensez à l’intérieur des différents blocs à **indenter** le code à l'aide de **tabulations** pour faciliter sa lecture !
 +</WRAP>
 +
 +Vu le bagage qu'il possède, cela ne devrait pas représenter de réels soucis de codage. Sans doute quelques erreurs de syntaxe.
 +
 +<WRAP center round important 60%>
 +L'erreur la plus courante est de ne pas fermer systématiquement une accolade ouverte
 +<code bash>{ ...
 +  bloc d'instruction 1
 +  # TEST
 +  {
 +    ....
 +     bloc d'instruction
 +     ....
 +  }
 +}</code>
 +</WRAP>
 +
 +
 +Proposition de code
 +<code bash>reset
 +
 +$figure = ask "Carré ? Rectangle ? Losange ? Triangle"
 +
 +# Test du carré
 +if ($figure == "carré") {
 + repeat 4 {
 + forward 40
 + turnright 90
 + }
 +}
 +
 +# Test du triangle
 +if ($figure == "triangle") {
 + repeat 3 {
 + forward 40
 + turnright 120
 + }
 +}
 +
 +# Test du losange
 +if ($figure == "losange") {
 + repeat 6 {
 + forward 40
 + turnright 60
 + }
 +}
 +
 +# Test du rectangle
 +if ($figure == "rectangle") {
 + repeat 4 {
 + forward 40
 + turnright 90
 + forward 80
 + turnright 90
 + }
 +}</code>
 +
 +Bien sûr lors de l'invitation de saisie de la pop-up, il arrivera que l'élève ait fait une faute de saisie (orthographe ou frappe).
 +
 +Dans ce cas, la variante ne passera pas les tests et le programme ne fera rien. 
 +Sous doute l'élève répondre : "Non, j'ai bien tapé le mot", dans ce cas, utilisez l'inspecteur de code afin de bien faire l'erreur de saisie.
 +
 +| {{ :kturtle:capture_d_ecran_2020-01-08_08-00-45.png?direct&400 |}}| {{kturtle:capture_d_ecran_2020-01-08_08-01-07.png?direct&400 |}}| 
 +
 +Le programme va donc devoir être amélioré avec quelques lignes basiques de **gestion de l'erreur**.
 +
 +Donc, on va réaliser les tests nécessaires et gérer tout ce qui ne correspond pas à ces tests.
 +
 +**Si** (test) **ALORS** (instruction)
 +**Si** (autre test) **ALORS** (autre instruction)
 +...
 +**Si** (autre test) **ALORS** (autre instruction)
 +
 +Et enfin 
  
-Variante +**__SINON__** **ALORS** (instruction)
-Allez plus loin, en demandant de tester aussi avec les mots "rouge" et "ROUGE"+
  
 +On introduit alors le mot clef, l'opérateur **ELSE**
  
 +|{{ :kturtle:capture_d_ecran_2020-01-08_08-08-53.png?direct&200 |}}|{{ :kturtle:capture_d_ecran_2020-01-08_08-09-05.png?direct&400 |}}|
 ===== Navigation ===== ===== Navigation =====
 ^ page précédente       ^ Sommaire                                  ^ Page suivante       ^ ^ page précédente       ^ Sommaire                                  ^ Page suivante       ^
-| [[kturtle:kturtle-activites-10|Et le hasard dans tout cela ?]] | [[https://cbiot.fr/dokuwiki/doku.php#kturtle|sommaire]] | |+| [[kturtle:kturtle-activites-10|Et le hasard dans tout cela ?]] | [[https://cbiot.fr/dokuwiki/doku.php#kturtle|sommaire]] |[[kturtle:kturtle-activites-12|Une boucle de comptage]]]] |
kturtle/kturtle-activites-11.txt · Dernière modification : 2020/01/09 21:38 de crust