Les filles qui…
CC BY-SA 4.0	5  - Variables et conditions	Ton nom :	
Coche la case quand tu as fini l’exercice.
1. Variables d’état		2. Anniversaires		3. Le nombre mystère		4. Opérateurs		
1.	Variables d’état
	Comprends
Tu connais déjà des variables d’état comme la taille du lutin  ou sa position  et . Une variable est un petit bout de mémoire qui porte un nom et qui contient des valeurs.
Si on coche la case , on voit la valeur de la variable sur un moniteur 
On ne peut pas changer la valeur avec le moniteur, c’est comme une caméra et un écran sur la mémoire.
Certains blocs comme  change l’état, donc la valeur de la variable. 
La position d’un lutin est celle du milieu du lutin, elle ne change pas quand il s’oriente ou qu’il tourne.
On suppose que les blocs sont exécutés ligne après ligne de haut en bas. Réponds aux questions
Blocs	Effets	
	 VRAI□ FAUX□	
	 VRAI□ FAUX□	
	 VRAI□ FAUX□	
	Comprends
Quand il y a plusieurs lutins, en général, chaque lutin a des variables qui sont pour le lutin uniquepment. Coche la case  du panda , ajoute le lutin Tera  et coche sa taille.
Regarde chaque ligne du tableau et réponds aux questions
Lutins	Programmes	Action	Effets	
		Clic sur le panda	VRAI□ FAUX□	
			VRAI□ FAUX□	
		Clic sur le drapeau vert	VRAI□ FAUX□	
			 VRAI□ FAUX□	

2.	Anniversaires

	Essaye
Tu crées une variable avec  qui est dans la catégorie (orange) « Blocs et variables »
Tu choisis le nom et si la variable appartient à tous les lutins ou seulement à ce lutin.
Choisis le panda. Crée une variable «age» et coche là

Crée ces deux scripts pour le panda.

Choisis Tera. Crée une variable «age» et coche là. Crée les mêmes scripts pour Tera avec l’âge à 8.
Clique sur le drapeau vert.
Les moniteurs affichent 
Va dans la catégorie (marron) «  Evénements » et clique sur . Observe bien les moniteurs : que s’est-il passé ?
Le panda a un an de plus	VRAI□ FAUX□
Tera a aussi un an de plus	VRAI□ FAUX□
	Comprends et programme
On va utiliser un nouveau lutin qui joue le rôle du temps. Chaque seconde vaut un mois. Au bout de 12 secondes, une année est passée et il faut envoyer le message « Anniversaire » au panda et à Tera.
Ajoute le lutin Candle (bougie) et ce script

Clique sur le . Observe la scène et les moniteurs.
	Comprends et modifie
Le temps ne s’arrête jamais. Tu vas modifier Candle. Candle va utiliser une variable appelée « mois » qui contient le numéro du mois.  Au tout début, la variable « mois » vaut 0 (c’est juste avant le 1er Janvier). Chaque seconde vaut un mois, donc après chaque seconde, on ajoute 1 à la variable « mois ». Au bout de 12 secondes, une année est passée, il faut envoyer le message « Anniversaire » au panda et à Tera et remettre la variable « mois » à 0 (c’est de nouveau avant le 1er jour du mois de Janvier).
Crée une variable mois de Candle  et ce script
 
Clique sur le . Observe la scène et les moniteurs.
	Bonus (si tu as le temps)
Supposons que le panda ait son anniversaire en Octobre (mois 10) et Tera en Avril (mois 4). Il faut tester si le temps est arrivé sur Avril ou Octobre et envoyer un message personnalisé à Tera « AnniversaireTera » en Avril et envoyer un message personnalisé au panda « AnniversairePanda » en Octobre et aussi tester la fin de l’année.
Il faut aussi que Tera réagisse au message « AnniversaireTera » et le panda au message « AnniversairePanda ».

	Essaye
Avec le bloc  le panda pose la question demandée et attend que tu écrives la réponse (ici 10) dans le champ entouré

La réponse est stockée dans la variable .
A chaque fois qu’il y a le bloc   et que tu écris une nouvelle réponse,  change.
Coche  écris ce programme, observe.

3.	Le nombre mystère
	Comprends
Tu vas programmer un petit jeu où l’ordinateur a un nombre secret. Le nombre secret est un nombre aléatoire entre 1 et 10. Tu dois deviner le nombre secret en donnant une réponse.
Avec un clic droit, cache les lutins et choisis un nouveau lutin Wizard Hat, le chapeau de sorcier    
Crée la variable  pour l’objet Wizard Hat uniquement. Comprends le tableau, écris le programme et teste.
Algorithme	Wizard Hat	Toi	
Quand le drapeau vert est cliqué
Mettre « secret » à nombre entre 1 et 10
Demander le nombre
Si réponse = secret alors
    « C’est gagné »
sinon
  «  C’est perdu »
└		

Un nombre	
	
	Modifie
Tu peux donner 1, 2 ou 3 réponses. Mets le bloc  dans un bloc . Teste. Coche  pour t’aider à tester. Que se passe-t-il si tu as trouvé la 1ère ou la 2ème fois ?

	Essaye
Le jeu complet s’arrête quand tu trouves le nombre secret. Pour t’aider, le panda te dit si ta réponse est trop petite ou trop grande. Teste ce programme.

4.	Opérateurs

	Essaye
Crée deux variables  et . Le bloc   met  devant 
Ecris le programme dessous, exécute-le et réponds.

 a changé 2 fois de valeur 	V □ F □
Avec  le prénom est séparé du nom par un espace 	VRAI □ FAUX □
 le prénom est séparé du nom par une barre / VRAI □ FAUX □
Modifie
 est une chaine de caractères (des caractères qui se suivent). Une variable comme   peut stocker une chaine de caractères.   donne la première lettre d’une chaine de caractères. 
Modifie le programme pour que le panda dise tes initiales. Ex : MP sont les initiales de Mister Panda
Astuce : il faut un  où à gauche on a la 1ère lettre de prénom et à droite celle de nom.
	Modifie
Crée la variable  si tu ne l’as pas. Modifie le script pour que le panda dise ton prénom et ton âge. 
Astuce : il faut un 1er  pour la phrase « Je m’appelle … » un 2ème  pour « Mon âge est … »  et un 3ème pour y mettre les 2.

	Comprends et programme
Une variable contient une seule valeur. Quand on veut stocker plusieurs valeurs, on crée une liste.
 On va créer une liste que tous les lutins partagent. Cette liste permet de s’inscrire à une fête (Party).
 ajoute quelque chose à la liste. Clique dessus plusieurs fois et observe la liste.  est une condition qui dit si quelque chose est dans la liste. 
Le lutin Candle invite les autres. Ecris le script.

Quand il reçoit l’invitation, le panda décide s’il s’inscrit ou pas à la liste. Ecris le script et teste.

Copie ce script sur Tera, change le nom. Teste 
Scratch se trompe quelque fois dans les réponses !
	Programme
Pour avoir les inscrits, Candle dit le nom de chaque.  est le nombre d’invités.  Teste.

Leçon 5  - Solution
1. Variables d’état
	Comprends
On suppose que les blocs sont exécutés ligne après ligne de haut en bas. Réponds aux questions
Blocs	Effets	
	 VRAI■ FAUX□	
	 VRAI■ FAUX□	
	 VRAI□ FAUX■	
	Comprends
Quand il y a plusieurs lutins, en général, chaque lutin a des variables qui sont pour le lutin uniquepment. Coche la case  du panda , ajoute le lutin Tera  et coche sa taille.
Regarde chaque ligne du tableau et réponds aux questions
Lutins	Programmes	Action	Effets	
		Clic sur le panda	VRAI□ FAUX■	
			VRAI□ FAUX■	
		Clic sur le drapeau vert	VRAI□ FAUX■	
			 VRAI■ FAUX□	
2. Anniversaires

	Essaye
Crée ces deux scripts pour le panda.

Choisis Tera. Crée une variable «age» et coche là. Crée les mêmes scripts pour Tera avec l’âge à 8.
Clique sur le drapeau vert.
Les moniteurs affichent 
Va dans la catégorie (marron) «  Evénements » et clique sur . 
Le panda a un an de plus	VRAI■ FAUX□
Tera a aussi un an de plus	VRAI■ FAUX□

	Bonus (si tu as le temps)
Supposons que le panda ait son anniversaire en Octobre (mois 10) et Tera en Avril (mois 4). Il faut tester si le temps est arrivé sur Avril ou Octobre et envoyer un message personnalisé à Tera « AnniversaireTera » en Avril et envoyer un message personnalisé au panda « AnniversairePanda » en Octobre et aussi tester la fin de l’année.
Il faut aussi que Tera réagisse au message « AnniversaireTera » et le panda au message « AnniversairePanda ».
Candle	Tera	M. Panda	
Quand le drapeau vert est cliqué
Mettre « mois » à 0
Répéter indéfiniment
  Si mois = 4 alors
    Envoyer à tous « AnnivTera »
  Si mois = 10 alors
    Envoyer à tous « AnnivPanda »
  Si mois > 12 alors
    Mettre « mois » à 0
└	Quand je reçois « AnnivTera »
Dire « Mon anniversaire ! »
Ajouter à « age » 1	Quand je reçois « AnnivPanda »
Dire « Mon anniversaire ! »
Ajouter à « age » 1	

3. Le nombre mystère
	
	Modifie
Tu peux donner 1, 2 ou 3 réponses. Que se passe-t-il si tu as trouvé la 1ère ou la 2ème fois ?

4. Opérateurs

	Essaye
Crée deux variables  et . Le bloc   met  devant 
Ecris le programme dessous, exécute-le et réponds.

 a changé 2 fois de valeur 	V ■ F □
Avec  le prénom est séparé du nom par un espace 	VRAI □ FAUX ■
 le prénom est séparé du nom par une barre / VRAI ■ FAUX □Modifie
Modifie le programme pour que le panda dise tes initiales. 
Ex : MP sont les initiales de Mister Panda

	Modifie
Modifie que le panda dise ton prénom et ton âge.