Outils pour utilisateurs

Outils du site


kturtle:kturtle-activites-10

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
kturtle:kturtle-activites-10 [2020/01/07 18:44] crustkturtle:kturtle-activites-10 [2020/01/14 16:58] (Version actuelle) – [Variantes inventées par les élèves] cyrille
Ligne 1: Ligne 1:
-===== Et le hasard dans tout cela ? =====+====== Et le hasard dans tout cela ? =====
 + 
 +===== Inducteur : une invasion de carrés ===== 
 + 
 +On présente cette image et demande d'analyser ce que l'on y voit. 
  
 {{ :kturtle:capture_d_ecran_2020-01-07_08-42-43.png?direct&400 |}} {{ :kturtle:capture_d_ecran_2020-01-07_08-42-43.png?direct&400 |}}
  
-Une proposition de code+ 
 +==== Pas à pas... ==== 
 + 
 +Normalement, il en ressort que l'on voit des carrés, que des carrés avec comme changement : 
 +  * La couleur 
 +  * L'épaisseur du trait 
 +  * La position 
 + 
 +Impecc ! On sait gérer tout cela. Le seul hic c'est que les chiffres de ces propriétés varient à chaque traçage comme s'il l'on lançait un dé : il va fallait **gérer le hasard**. 
 + 
 +Bien que le hasard n'existe pas en informatique, mais ça les élèves ne sont pas obligés de le savoir, il y a quand même une fonction qui va nous rendre service : la fonction **random** . 
 + 
 +Cette fonction random fonctionne avec 2 paramètres qui définissent une plage de données : la valeur minimale de cette plage de donnée et la maximale. 
 + 
 +Ainsi pour reproduire un dé, on utilisera le code 
 + 
 +<code bash>random 1,6</code> 
 + 
 +Qui fournira un chiffre de 1 à 6 de façon aléatoire "simulée"
 + 
 +Donc on reprend le plan de construction nécessaire POUR UN CARRE dessiné de façon aléatoire. 
 + 
 +<code bash>- Aller à X, Y  
 +(compris dans le canevas, même un peu moins s'il on ne veut pas que ça dépasse...) 
 + 
 +- Prendre un crayon d'épaisseur X 
 + 
 +- Choisir une couleur R, V, B (avec R V B qui changent à chaque fois) 
 + 
 +- Tracé un carré de coté X</code> 
 + 
 +Recommencer plein de fois ce protocole et changeant les valeurs. 
 +</code> 
 + 
 +Ça devient clair, on réalise ce type de plan de construction au tableau. 
 + 
 +<code bash>go (mini : 50, maxi: 350),(mini : 50, maxi: 350) 
 +penwidth (mini : 1, maxi:8) 
 +pencolor (mini : 0, maxi:255),(mini : 0, maxi:255),(mini : 0, maxi:255) 
 +# le carré 
 +repeat 4 { 
 +   forward CoteQuiChangeAChaqueCarré 
 +   turnright 90 
 +}</code> 
 + 
 +<WRAP center round important 60%> 
 +Attention, pour le carré, ils auront tendance à coller un random suite au forward mais ce n'est pas la bonne méthode car ainsi on n'aura plus un carré mais 4 segments orthogonaux aux dimensions différentes. Il faut donc définir ce coté AVANT la boucle du carré. 
 +</WRAP> 
 + 
 + 
 +Une fois que ça passe pour un carré, on englobe le tout dans une grosse boucle qui répétera l'opération autant de fois que nécessaire (sur l'image sus-citée, il y en a 50) 
 + 
 +==== Proposition de code ==== 
 <code bash>reset <code bash>reset
 spritehide spritehide
Ligne 23: Ligne 81:
 }</code> }</code>
  
-Variantes : idem avec des triangles, des losanges, des rectangles...+<WRAP center round tip 60%> 
 +Attention à bien mettre des parenthèses **(**random 10,100**)** , certes non obligatoires en appel traditionnel, mais sinon ça posera des soucis sur l'appel de **pencolor** 
 +(**kturtle** aura du mal à parser les paramètres des différentes fonctions, les **( )** permettront de palier  à ce problème... 
 +</WRAP> 
 +  
 + 
 +Finalement, ce n'était pas si compliqué... 
 + 
 +==== Variantes ==== 
 + 
 +Idem avec des triangles, des losanges, des rectangles... 
 + 
 +En les laissant en activité libre, certains changent les angles et des étoiles apparaissent. Avec un peu d'aide, on voit même des cercles (il suffit de rappeler qu'un cercle vaut 360° puis ils tâtonnent...) 
 + 
 +==== Quelques photos de classe ==== 
 + 
 +|{{ :kturtle:photo_1_1_.jpg?direct&400 |}}|{{ :kturtle:photo_1.jpg?direct&400 |}}| 
 +|{{ :kturtle:photo_2_1_.jpg?direct&400 |}}|{{ :kturtle:photo_2.jpg?direct&400 |}}| 
 +|{{ :kturtle:photo_3.jpg?direct&400 |}}|{{ :kturtle:photo_3_1_.jpg?direct&400 |}}| 
 +|{{ :kturtle:photo_4.jpg?direct&400 |}}|{{ :kturtle:photo_4_1_.jpg?direct&400 |}}| 
 +{{ :kturtle:photo_5_1_.jpg?direct&400 |}} 
 + 
 + 
 +===== Jouons avec les prénoms ===== 
 +Réinvestissement des séquences précédentes 
 + 
 +Ils savent : 
 +   * Ecrire un message --> **print** "message" 
 +   * Changer la couleur d'écriture -> **pencolor** R,G,B 
 +   * Changer la taille de la police -> **fontsize** X 
 +   * Se positionner sur une feuille -> **go** X,Y 
 +   * Récupérer une entrée d'une pop-up dans une variable -> $var = **ask** "Question" 
 +   * Faire des boucles (répétitions) -> **repeat** {} 
 + 
 + 
 +On présente le document final souhaité, on mutualise ce que l'on voit, on analyse... et puis c'est à eux de jouer ! 
 + 
 + 
 +{{ :kturtle:capture_d_ecran_2020-01-09_13-49-13.png?direct&400 |}} 
 + 
 +{{ :kturtle:capture_d_ecran_2020-01-09_13-48-45.png?direct&200|}} 
 + 
 +{{ :kturtle:capture_d_ecran_2020-01-09_13-49-30.png?direct&400 |}} 
 + 
 +Proposition de code 
 +<code bash>reset 
 +spritehide 
 +$prenom = ask "Quel est ton prénom ?" 
 +repeat 25 { 
 + go (random 0,300) , (random 0, 300) 
 + pencolor (random 0,250), (random 0,250),(random 0,250) 
 + fontsize (random 10,30) 
 + print $prenom 
 +}</code> 
 + 
 +===== Variantes inventées par les élèves ===== 
 +==== Deux prénoms ==== 
 + 
 +En fonction de leur imagination, mais celle-ci n'est pas mal du tout : 
 +  * Saisis de 2 prénoms (donc 2 variables) 
 +  * Un prénom est affiché dans une couleur, l'autre dans une autre (donc 2 boucles de répétition) 
 +{{ :kturtle:capture_d_ecran_2020-01-14_16-25-28.png?direct&600 |}} 
 +(bon OK, il y a une faute d'orthographe et les paramètres du random() sont inversés, mais ils ont codé seuls...) 
 + 
 +==== Avec des calculs ==== 
 + 
 +Variantes basée sur l'affichage d'un résultat de calcul plutôt qu'ne saisit de texte 
 + 
 +==== Avec du texte ====
  
 +Style nom / Date de naissance. 
 +Basé sur la **concaténation** de deux variables de type **string** (X).
 +===== Navigation =====
 +^ page précédente       ^ Sommaire                                  ^ Page suivante       ^
 +| [[kturtle:kturtle-activites-09|Nombres, géométrie, boucles...]] | [[https://cbiot.fr/dokuwiki/doku.php#kturtle|sommaire]] | [[kturtle:kturtle-activites-11|La boucle if]]|
kturtle/kturtle-activites-10.txt · Dernière modification : 2020/01/14 16:58 de cyrille