1 00:00:01,860 --> 00:00:10,076 Então nós já criamos essa variável legal para os olhos do Winston, a qual tem sido realmente útil porque nos salvou de digitar muito, quando queremos mudar o tamanho dos olhos 2 00:00:10,076 --> 00:00:15,497 Lembre-se que antes tínhamos que digitar o mesmo número quatro vezes, sempre que queríamos mudar o tamanhos dos olhos dele 3 00:00:15,497 --> 00:00:18,940 Mas nós podemos usar variáveis para substituir números quando eles não são iguais? 4 00:00:18,940 --> 00:00:21,496 E se eu quisesse mover o Winston um pouquinho? 5 00:00:21,496 --> 00:00:27,472 Nós poderíamos mudar cada uma dessas coordenadas x, mas elas não são iguais, então eu não posso substituí-las com alguma variável 6 00:00:27,472 --> 00:00:33,469 Mas espere! Uma vez que eu atribuir um número a uma variável, eu posso usar essa variável exatamente como se fosse aquele número 7 00:00:33,469 --> 00:00:36,693 O que significa, eu posso usar variáveis em expressões matemáticas 8 00:00:36,693 --> 00:00:40,462 Que tal isso, vamos criar uma variável para a posição x de Winston 9 00:00:40,462 --> 00:00:43,024 Vamos chamar de "var x" 10 00:00:43,024 --> 00:00:47,744 Simples o suficiente, okay, agora vamos da-la o valor da coordenada x da cara do Winston 11 00:00:47,744 --> 00:00:51,339 A cara dele está sendo desenhada na coordenada x 200 12 00:00:51,339 --> 00:00:54,423 Então nós dizemos var x recebe 200 (var x = 200;) 13 00:00:55,053 --> 00:01:02,398 Agora eu posso substituir esse número com a minha nova variável "x". E quando eu mudar o valor de x, a cara do Winston move 14 00:01:02,398 --> 00:01:04,896 Mas não seus olhos ou sua boca 15 00:01:04,896 --> 00:01:13,694 Para arrumar isso, nós teremos que definir a posição dos olhos deles e da boca, relativa a posição da cara. 16 00:01:13,694 --> 00:01:19,940 Então a coordenadas "x" serão os centros de todas as outras elipses, então a cara dele está sendo desenhada em... 17 00:01:19,940 --> 00:01:28,603 200, agora vamos fazer seu olho esquerdo primeiro, essa elipse é o olho esquerdo dele, e podemos ver que está desenhada em 150 18 00:01:28,603 --> 00:01:32,865 Então bem aqui é 150 19 00:01:32,865 --> 00:01:37,556 E eu sei que 150 é 200 menos 50 20 00:01:37,592 --> 00:01:42,360 Então seu olho esquerdo deverá estar sempre onde a cara dele está, menos 50 21 00:01:42,360 --> 00:01:46,894 Então vai ser "x", que é a posição da cara dele, menos 50 22 00:01:46,894 --> 00:01:52,950 E agora se eu mudar o valor dessa coordenada x, o olho dele se move junto com a cara 23 00:01:52,864 --> 00:01:54,206 Vamos fazer os outros. 24 00:01:54,206 --> 00:02:01,302 Então o olho direito dele é está desenhado em 300, eu posso ver, então aqui é 300 25 00:02:01,302 --> 00:02:05,214 E 300, eu sei que é 100 a mais que 200 26 00:02:05,214 --> 00:02:09,902 Então o olho direito deverá estar sempre aonde a cara estiver mais 100 27 00:02:09,902 --> 00:02:12,535 Isso é x+ 100 28 00:02:12,535 --> 00:02:16,302 Agora nós temos apenas a boca, que está sendo desenhada em 250 29 00:02:16,302 --> 00:02:22,993 É bem aqui, nós temos 250, e 250 é 200 mais 50 30 00:02:22,993 --> 00:02:29,635 Ela sempre estará onde a cara está x + 50 31 00:02:29,635 --> 00:02:37,052 Agora eu vou me livrar desses rabiscos. Sempre que eu mudar o valor de x, vai mover a cara inteira! 32 00:02:39,205 --> 00:02:42,697 Antes de você ir, você devia saber umas coisas a mais sobre variáveis 33 00:02:42,697 --> 00:02:45,558 Uma vez que você criou uma variável usando var x 34 00:02:45,558 --> 00:02:48,395 Você pode atribuir o valor quantas vezes você quiser. 35 00:02:48,395 --> 00:02:57,996 Então depois de dar a x o valor 198, eu posso dizer que x recebe 300, ou x recebe 150 36 00:02:57,996 --> 00:03:03,724 A partir daí, o computador tratará x como nós atribuímos por último 37 00:03:03,724 --> 00:03:05,529 Nesse caso 150 38 00:03:05,529 --> 00:03:08,235 Mas você só precisar digitar var uma vez por variável 39 00:03:08,235 --> 00:03:15,329 Se aqui eu digitar var x = 150; em vez disso, isso vai ter criado uma nova variável chamada x 40 00:03:15,329 --> 00:03:21,062 Completamente destruindo a velha variável x no processo, então todas essas variável terão indo para a lixeira 41 00:03:21,062 --> 00:03:24,432 E depois disso o computador apenas usará a nova variável 42 00:03:24,432 --> 00:03:28,951 Algumas vezes você pode fazer isso sem que coisas terríveis aconteçam, mas eu não aconselharia. 43 00:03:28,951 --> 00:03:32,448 Por hora eu só vou fazer isso uma vez ( var x = 150;) 44 00:03:32,448 --> 00:03:39,058 E agora convenientemente eu posso mover todo o Winston para fora da tela, então eu posso falar sobre o próximo assunto 45 00:03:39,058 --> 00:03:46,662 Então sempre que você tiver uma variável igual a algo, essa variável está num lugar seguro e feliz. 46 00:03:46,662 --> 00:03:53,269 Na verdade no lado esquerdo do sinal de igual está o único lugar onde uma variável pode verdadeira se sentir como uma 47 00:03:53,269 --> 00:03:57,173 porque este é o único lugar que o computador a considerará como variável. 48 00:03:57,173 --> 00:04:00,037 Em qualquer outro lugar, o computador apenas finge que é um valor 49 00:04:00,037 --> 00:04:05,949 Mesmo que façamos algo assim, var x recebe 10 (var x = 10;) 50 00:04:05,949 --> 00:04:11,760 E então, x recebe x (x = x;) Uau, confuso 51 00:04:11,760 --> 00:04:19,997 Bem, na esquerda, nós temos x, que é um variável livre e independente, que pode crescer, que pode mudar! 52 00:04:19,997 --> 00:04:24,997 Mas na esquerda é apenas 10 53 00:04:24,997 --> 00:04:29,167 Triste :( Mas isso significa que podemos fazer coisas realmente úteis como 54 00:04:29,167 --> 00:04:33,535 Eu posso dizer que x recebe x+1 (x = x+1;) 55 00:04:33,535 --> 00:04:43,034 Então nas esquerda temos nossa variável em um lugar seguro e feliz, e na direita nós temos essa variável, a qual nós sabemos que basicamente é só um número 56 00:04:43,034 --> 00:04:44,449 É só 10 57 00:04:44,449 --> 00:04:47,199 Então nós mentalmente substituímos esse x por 10 mais 1 58 00:04:47,199 --> 00:04:51,064 Que apenas significa x recebe 11 59 00:04:51,064 --> 00:04:57,453 Então essa linha inteira está basicamente dizendo x recebe 11, então de agora em diante o valor de x é 11 60 00:04:57,453 --> 00:05:00,831 Vamos ver o que acontece se trazermos outra variável para a equação 61 00:05:00,831 --> 00:05:06,448 Nós faremos var x recebe 10 (var x = 10;) 62 00:05:06,448 --> 00:05:10,500 var y recebe 20 (var y = 20;) 63 00:05:10,500 --> 00:05:12,733 x recebe y (x = y;) 64 00:05:12,733 --> 00:05:17,029 e y recebe 7 (y = 7;) 65 00:05:17,029 --> 00:05:21,203 Ok, o que eu quero saber é, qual o valor de x? 66 00:05:21,203 --> 00:05:23,531 Vamos descobrir 67 00:05:23,531 --> 00:05:28,604 Então neste ponto criamos uma nova variável x, e atribuímos o valor 10 68 00:05:28,604 --> 00:05:31,287 Então o valor de x é 10 69 00:05:31,287 --> 00:05:35,536 Nesse ponto aqui, criamos uma nova variável y e a demos o valor 20 70 00:05:35,536 --> 00:05:39,165 Então não fizemos nada em x, então o valor de x ainda é 10 71 00:05:39,165 --> 00:05:44,098 Aqui nós estamos dizendo x recebe y. Bem isso é muito confuso, mas se você pensar sobre isso 72 00:05:44,098 --> 00:05:47,869 nós sabemos que apenas uma dessa variáveis está no lugar seguro e feliz. 73 00:05:47,869 --> 00:05:52,204 E a outra variável está sendo tratada exatamente como se fosse um número 74 00:05:52,957 --> 00:06:00,188 Então aqui nós mentalmente substituímos esse y com o seu valor, que é 20, e nós sabemos o que aquele sinal realmente significa 75 00:06:00,188 --> 00:06:04,725 é que x recebe 20. Então o valor de x é 20! 76 00:06:04,725 --> 00:06:09,948 E aqui nós temos o y no lugar seguro e feliz dessa vez, mas esse não é realmente confuso 77 00:06:09,948 --> 00:06:12,698 porque nós temos um número do outro lado 78 00:06:12,698 --> 00:06:21,071 Aqui está a grande questão, quando eu mudo o valor do y aqui, isso muda o valor de x ali em cima? 79 00:06:21,071 --> 00:06:25,558 A resposta, NÃO!! 80 00:06:25,558 --> 00:06:31,166 Você tem que lembrar, aqui em cima y está sendo tratada apenas como um número 81 00:06:31,166 --> 00:06:35,864 O computador vai ignorar completamente que é uma variável, esquecer que de fato ela pode mudar 82 00:06:35,864 --> 00:06:41,614 e ele só vai dizer "oh, y o que você realmente significa é 20" 83 00:06:41,614 --> 00:06:49,224 Então bem qui, nós estamos atribuindo um número a x, não estamos atribuindo uma variável, estamos adicionando o valor de y, que é 20 84 00:06:49,224 --> 00:06:58,705 E isso significa que o valor de x continua 20, mesmo que depois nós mudemos o valor dessa variável y na última linha 85 00:06:58,705 --> 00:07:06,285 Ufa! Capisce? Bem agora vocês são especialistas em variáveis, parabéns!!