0:00:00.000,0:00:05.038 Nous avons déjà créé une première variable [br]pour la taille des yeux de Winston. 0:00:05.038,0:00:10.076 Cela nous permet de changer la taille [br]de ses yeux très facilement maintenant. 0:00:10.076,0:00:14.927 Avant, on devait changer le même nombre[br]quatre fois pour faire ça ! 0:00:15.097,0:00:18.540 Peut-on utiliser les variables même si[br]les nombres ne sont pas tous les mêmes ? 0:00:18.540,0:00:21.456 Que dois-je faire pour [br]changer sa position un petit peu ? 0:00:21.496,0:00:27.472 Il faudrait modifier toutes les coordonnée X [br]mais elles n'ont pas toutes la même valeur ! 0:00:27.472,0:00:30.545 Bon. Une fois que je défini une variable qui[br]contient une valeur... 0:00:30.545,0:00:33.618 je peut l'utiliser partout pour[br]remplacer ce nombre. 0:00:33.618,0:00:36.693 Je peux donc l'utiliser aussi dans des expressions[br]pour faire des calculs. 0:00:36.693,0:00:40.462 Bon. Comment ça marche ?[br]Créons une variable pour la coordonnée X. 0:00:40.462,0:00:43.024 on écrit "var x" 0:00:43.024,0:00:47.744 C'est simple. OK.[br]Elle doit contenir la coordonnée X du visage. 0:00:47.744,0:00:51.339 Le visage est dessiné à [br]la coordonnée X qui vaut 200. 0:00:51.339,0:00:54.423 Donc on indique que [br]"x contient 200" 0:00:55.053,0:00:58.334 Maintenant, je peux remplacer ce nombre [br]par ma variable "x". 0:00:58.334,0:01:01.615 Et quand je change sa valeur, [br]cela bouge son visage. 0:01:01.615,0:01:04.896 Par contre, ça ne bouge ni ses yeux, ni sa bouche. 0:01:04.896,0:01:09.910 Pour faire ça, on va calculer la position [br]de ses yeux et de sa bouche... 0:01:09.910,0:01:14.924 ... RELATIVEMENT à la position du visage. 0:01:14.924,0:01:19.940 La coordonnée X de chaque ellipse correspond[br]à son centre. Pour le visage... 0:01:19.940,0:01:28.603 ... c'est 200. Commençons par son oeil gauche.[br]Cette ligne avec l'ellipse est celle de l'oeil gauche, [br]positionnée à 150. 0:01:28.603,0:01:32.865 Donc... par là... c'est 150. 0:01:32.865,0:01:37.556 Et je sais que 150, c'est 200 moins 50. 0:01:37.592,0:01:42.360 Donc la position de l'oeil gauche est [br]celle du visage MOINS 50. 0:01:42.360,0:01:46.894 Donc, c'est "x" (la position du visage) moins 50. 0:01:46.894,0:01:52.950 Et maintenant, si je change la valeur de "x", [br]l'oeil se déplace avec le visage. 0:01:52.864,0:01:54.206 Faisons l'autre oeil. 0:01:54.206,0:02:01.302 Son oeil droit est dessiné à... 300.[br]Donc... par là... c'est 300. 0:02:01.302,0:02:05.214 Et 300, c'est 200 plus 100. 0:02:05.214,0:02:09.902 Donc la position de l'oeil droit est [br]celle du visage PLUS 100. 0:02:09.902,0:02:12.535 C'est : "x + 100" 0:02:12.535,0:02:16.302 Passons maintenant à la bouche.[br]Elle est dessinée à 250. 0:02:16.302,0:02:22.993 C'est par là... c'est 250.[br]Et 250, c'est 200 plus 50. 0:02:22.993,0:02:29.635 Donc sa position est [br]celle du visage PLUS 50. 0:02:29.635,0:02:37.052 Bon... maintenant... Si je change[br]la valeur de "x", cela bouge tout le visage ! 0:02:39.205,0:02:42.697 Bon avant de terminer, on va voir d'autres[br]utilisations des variables. 0:02:42.697,0:02:45.558 Une fois que vous avez créé une variable [br]avec "var x"... 0:02:45.558,0:02:48.395 vous pouvez changer sa valeur [br]tant que vous voulez. 0:02:48.395,0:02:57.996 Donc, après avoir indiqué que x contient 198,[br]je peux dire que x contient 300 ou... x contient 150. 0:02:57.996,0:03:03.724 Pour l'ordinateur, x contiendra la dernière valeur[br]qu'on lui a indiqué. 0:03:03.724,0:03:05.529 Ici, c'est 150. 0:03:05.529,0:03:08.235 Mais vous n'avez à écrire "var" [br]qu'une seule fois. 0:03:08.235,0:03:15.329 Si, ici, j'écris "var x=150;" j'indique que [br]je veux une toute nouvelle variable appelée "x". 0:03:15.329,0:03:21.062 Et du coup, cela détruit complètement [br]la précédente variable "x". 0:03:21.062,0:03:24.432 L'ordinateur utilisera ensuite la nouvelle[br]variable "x". 0:03:24.432,0:03:28.951 La plupart du temps, vous pourrez le faire [br]sans problèmes... Mais vraiment, il faut éviter. 0:03:28.951,0:03:32.448 Ici, je vais donc le faire qu'une fois.[br]"var x=150;" 0:03:32.448,0:03:39.058 Et je vais ranger Winston en dehors de l'écran...[br]pour vous parler du point suivant... 0:03:39.058,0:03:46.662 Dès que vous avez une variable égale à quelque chose[br]on a la variable placée au bon endroit. 0:03:46.662,0:03:53.269 En mettant la variable à gauche, on indique [br]que l'on veut lui affecter une valeur. 0:03:53.269,0:03:57.173 Placée à cet endroit, l'ordinateur va chercher à[br]modifier sa valeur. 0:03:57.173,0:04:00.037 Partout ailleurs, l'ordinateur va l'interpréter [br]comme étant une "valeur". 0:04:00.037,0:04:05.949 Même si on fait quelque chose comme [br]"x contient 10" ("var x=10;") 0:04:05.949,0:04:11.760 Puis... x contient x ( "x=x;" )[br]Wouhou... c'est bizarre ! 0:04:11.760,0:04:19.997 Et bien, à gauche, on a notre VARIABLE qui[br]peut avoir une valeur qui peut changer ! 0:04:19.997,0:04:24.997 Mais à droite, on a... seulement 10 ! 0:04:24.997,0:04:29.167 Avec ça, on peut faire des choses comme... 0:04:29.167,0:04:33.535 J'écris... x contient "x+1". 0:04:33.535,0:04:43.034 Donc à gauche, j'ai bien ma variable à sa place.[br]et à droite, j'ai cette variable qui a une valeur... 0:04:43.034,0:04:44.449 qui est simplement 10. 0:04:44.449,0:04:47.199 Donc, on peut remplacer ça par :[br]x contient 10 +1 0:04:47.199,0:04:51.064 c'est à dire :[br]x contient 11. 0:04:51.064,0:04:57.453 Donc cette ligne veut juste indiquer "x contient 11"[br]donc maintenant, on a "x" qui vaut 11. 0:04:57.453,0:05:00.831 Voyons ce qu'il se passe si on utilise [br]une autre variable. 0:05:00.831,0:05:06.448 On écrit : "var x contient 10" 0:05:06.448,0:05:10.500 et : "var y contient 20" 0:05:10.500,0:05:12.733 puis : "x contient y" 0:05:12.733,0:05:17.029 et : "y contient 7" 0:05:17.029,0:05:21.203 OK. Et je veux savoir ce que vaut "x" à la fin ? 0:05:21.203,0:05:23.531 Bon. Regardons ça de près. 0:05:23.531,0:05:28.604 Bon. Ici, on crée une nouvelle variable "x" [br]qui vaut 10. 0:05:28.604,0:05:31.287 Donc la valeur de x est 10. 0:05:31.287,0:05:35.536 Ici, on crée une nouvelle variable "y" [br]qui vaut 20. 0:05:35.536,0:05:39.165 Comme on n'a pas touché à "x", [br]"x" vaut toujours 10. 0:05:39.165,0:05:44.098 Maintenant, ici, on indique que "x contient y" ![br]Bon... qu'est-ce que ça fait ? 0:05:44.098,0:05:47.869 On sait qu'il y a une variable du bon côté... 0:05:47.869,0:05:52.204 et que de l'autre côté, on a une variable qui[br]est interprétée comme une valeur. 0:05:52.957,0:05:59.008 Donc on peut remplacer le "y" par sa valeur :[br]c'est 20 ! 0:05:59.008,0:06:04.725 Donc on a maintenant "x contient 20".[br]Et la valeur de "x" est maintenant... 20. 0:06:04.725,0:06:09.948 Maintenant, ici, on a "y" du bon côté...[br]mais c'est plus simple car... 0:06:09.948,0:06:12.698 ... de l'autre on a une valeur. 0:06:12.698,0:06:21.071 J'ai une question, ici : quand je change [br]la valeur de "y"... ici, est-ce que cela change[br]la valeur de "x"... ici ? 0:06:21.071,0:06:25.558 La réponse est... Non.[br]Non, non, non et non. 0:06:25.558,0:06:31.166 Souvenez-vous que... ici, "y" est seulement[br]interprété comme un nombre. 0:06:31.166,0:06:35.864 L'ordinateur va complètement ignorer [br]que c'est une variable... 0:06:35.864,0:06:41.614 et il va juste se dire : "oh ! y, vous vouliez dire 20". 0:06:41.614,0:06:49.224 Donc, ici, on affecte à x seulement un nombre...[br]pas une autre variable. Seulement la valeur 20. 0:06:49.224,0:06:58.705 Et donc, à la fin, la valeur de "x" reste à 20.[br]Même après avoir changer la valeur de "y". 0:06:59.635,0:07:08.055 Hou ! Compris ?[br]Et bien vous êtes experts sur les variables maintenant ![br]Bravo !!