0:00:01.740,0:00:03.810 Vi har allerede lavet[br]den her super seje variabel 0:00:03.810,0:00:06.480 til størrelsen på Winston's øjne,[br]der har været virkelig hjælpsom 0:00:06.480,0:00:08.916 fordi den sparer en masse tid[br]når vi vil ændre 0:00:08.916,0:00:10.500 størrelsen af Winston's øjne. 0:00:10.500,0:00:13.393 Husk: før skulle vi [br]skrive det samme tal fire gange 0:00:13.393,0:00:15.966 hver gang vi ville ændre[br]størrelsen på hans øjne. 0:00:15.966,0:00:17.809 Men kan vi bruge variabler[br]til at erstatte tal 0:00:17.809,0:00:19.212 når de ikke er ens? 0:00:19.212,0:00:21.716 Hvis vi for eksempel vil[br]flytte Winston lidt til siden? 0:00:21.716,0:00:23.763 Jeg kunne ændre [br]hvert af disse x koordinater, 0:00:23.763,0:00:25.568 men de er ikke alle sammen ens, 0:00:25.568,0:00:27.933 så jeg kan ikke bare erstatte dem[br]alle med en variabel. 0:00:27.933,0:00:29.139 Men vent! 0:00:29.139,0:00:31.825 Når jeg først har givet en variabel en værdi,[br]så kan jeg bruge den variabel 0:00:31.825,0:00:33.943 præcis som hvis den var et tal, 0:00:33.943,0:00:37.073 hvilket betyder at jeg kan bruge variabler[br]og matematik udtryk. 0:00:37.073,0:00:39.056 Så hvad med det her:[br]lad os lave en variabel 0:00:39.056,0:00:41.039 for x-positionen af Winston 0:00:41.039,0:00:43.024 Kald den "var x". 0:00:43.024,0:00:45.485 Simpelt nok.[br]Okay, lad us nu give den 0:00:45.485,0:00:48.036 værdien af x koordinatet[br]for Winston's ansigt. 0:00:48.036,0:00:51.339 Hans ansigt bliver tegnet[br]ved x koordinat 200. 0:00:51.339,0:00:54.423 Så vi skriver "var x" [br]tildeles værdien 200. 0:00:55.053,0:00:59.018 Nu kan jeg erstatte dette tal,[br]med min nye variabel x, 0:00:59.018,0:01:02.480 og når jeg ændrer værdien af x,[br]vil den flytte Winton's ansigt, 0:01:02.480,0:01:04.292 men ikke hans øjne eller hans mund. 0:01:04.982,0:01:08.038 For at fikse det,[br]vil vi skulle definere 0:01:08.038,0:01:10.415 positionen af hans øjne og hans mund, 0:01:10.415,0:01:14.082 relativt til positionen af hans ansigt. 0:01:14.082,0:01:16.752 X-koordinaterne vil blive centrum 0:01:16.752,0:01:20.462 for alle de andre ellipser,[br]så hans ansigt vil blive tegnet ved-- 0:01:20.462,0:01:24.596 det er 200,[br]og lad os lave hans venstre øje først. 0:01:24.596,0:01:26.472 Så denne ellipse er hans venstre øje,[br]og vi kan se 0:01:26.472,0:01:29.608 at den bliver tegnet ved 150. 0:01:29.608,0:01:33.075 Lige her, det er 150, 0:01:33.075,0:01:37.552 og jeg ved at 150 er 50 mindre end 200. 0:01:37.552,0:01:42.360 Så hans venstre øje skal være[br]hvor end hans ansigt er, minus 50. 0:01:42.360,0:01:47.660 Det bliver altså x,[br]der er positionen af hans ansigt, - 50. 0:01:48.020,0:01:50.082 Og nu, hvis jeg ændrer værdien[br]af det her x koordinat, 0:01:50.082,0:01:53.254 vil hans øjne flytte sammen med hans ansigt. 0:01:53.254,0:01:54.616 Lad os gøre det samme med de andre. 0:01:54.616,0:01:57.498 Hans højre øje bliver tegnet ved 300, 0:01:57.498,0:02:01.470 Så det her ovre er 300. 0:02:01.470,0:02:05.754 Og 300 ved jeg, er 100 mere end 200. 0:02:05.754,0:02:09.902 Så hans højre øje skal være[br]hvor hans ansigt er + 100. 0:02:09.902,0:02:12.535 Det er "x + 100". 0:02:12.535,0:02:14.181 Og nu har vi bare munden tilbage. 0:02:14.181,0:02:16.857 Hans mund bliver tegnet ved 250. 0:02:16.857,0:02:19.396 Det er herovre vi har 250, 0:02:19.396,0:02:22.895 og 250 er 200 plus 50. 0:02:22.895,0:02:26.054 Så det er hvorend--[br]åh, det er 5-- 0:02:26.054,0:02:30.983 hvorend hans ansigt er,[br]x + 50. 0:02:30.983,0:02:33.347 Og nu--[br]Vil jeg lige fjerne de her kragetæer-- 0:02:33.347,0:02:38.253 hver gang jeg ændrer på x,[br]vil det flytte hele hans ansigt. 0:02:38.253,0:02:39.579 Yay! 0:02:39.579,0:02:42.792 Nu, før du går, så skal du vide[br]et par andre ting om variabler. 0:02:42.792,0:02:45.558 Når du har lavet en variabel med "var x", 0:02:45.558,0:02:48.395 så kan du give den en værdi[br]så mange gange du vil. 0:02:48.395,0:02:51.504 Så efter at have givet x værdien 198, 0:02:51.504,0:02:54.947 kan jeg sige "x sættes til 300", 0:02:54.947,0:02:59.240 eller x sættes til 150. 0:02:59.240,0:03:01.216 Og der fra, vil computeren bruge x 0:03:01.216,0:03:03.432 som om den var det den sidst blev sat til. 0:03:03.432,0:03:05.419 Så i dette tilfælde, 150. 0:03:05.419,0:03:08.235 Men du skal kun skrive "var"[br]en gang per variabel. 0:03:08.235,0:03:12.510 Hvis jeg herovre[br]skrev "var x = 150" i stedet, 0:03:12.510,0:03:15.825 så vil det betyde at jeg[br]oprettede en helt ny variabel x, 0:03:15.825,0:03:18.394 og slette den gamle variabel x[br]fuldstændigt i processen. 0:03:18.394,0:03:21.563 så alle disse variable[br]er væk, i skraldespanden. 0:03:21.563,0:03:24.615 Og derefter, vil computeren kun bruge[br]den nye variabel. 0:03:24.615,0:03:28.127 Nogle gange kan du gøre den slags[br]uden at der sker noget alvorligt, 0:03:28.127,0:03:29.851 men jeg vil ikke anbefale det. 0:03:29.851,0:03:33.208 Ind til videre vil jeg kun gøre det en gang:[br]"var x = 150." 0:03:33.208,0:03:37.186 Og nu, belejligt nok,[br]kan jeg flytte hele Winston uden for skærmen, 0:03:37.186,0:03:40.254 så jeg kan snakke om mit næste punkt. 0:03:40.254,0:03:44.592 Altid når du har[br]en variabel ligmed et-eller-andet 0:03:44.592,0:03:47.450 så er den variabel på et dejligt og trygt sted. 0:03:47.450,0:03:50.691 Faktisk, venstre side af lighedstegnet[br]er det eneste sted 0:03:50.691,0:03:53.532 hvor en variabel kan[br]føles helt som sig selv, 0:03:53.532,0:03:55.540 fordi det er det eneste sted[br]hvor computeren 0:03:55.540,0:03:57.348 vil behandle den som en variabel. 0:03:57.348,0:04:00.037 All andre steder, vil computeren[br]lade som om at det er en værdi. 0:04:00.037,0:04:02.384 Så selv om vi gør sådan her: 0:04:02.384,0:04:06.041 var x sættes til 10 0:04:06.041,0:04:10.504 og derefter x sættes til x. 0:04:10.504,0:04:11.727 Åh, forvirrende! 0:04:11.727,0:04:14.572 Ovre til venstre, der har vi x, 0:04:14.572,0:04:17.497 som er en frit tænkende,[br]uafhængig variabel; 0:04:17.497,0:04:20.372 en der kan vokse eller kan ændre sig! 0:04:20.372,0:04:24.997 Men til højre der har vi[br]bare 10. 0:04:24.997,0:04:27.163 Trist![br]Men det betyder 0:04:27.163,0:04:28.939 at vi kan lave rigtig bruge bare ting: 0:04:28.939,0:04:33.535 Jeg kan skrive x sættes til x + 1 0:04:33.535,0:04:37.019 Så på venstre siden, der har vi vores variabel[br]på en dejlig og tryg plads, 0:04:37.019,0:04:40.412 og til højre, der har vi variablen, 0:04:40.412,0:04:42.674 som vi ved basalt set er et tal, 0:04:42.674,0:04:44.206 så den er bare 10. 0:04:44.206,0:04:47.199 Så vi kan mentalt erstatte[br]dette med "x sættes til 10 + 1", 0:04:47.199,0:04:51.064 Hvilket betyder at x sættes til 11. 0:04:51.064,0:04:54.319 Så hele denne linje, er basalt set[br]"x sættes til 11", 0:04:54.319,0:04:57.574 så fra nu af vil værdien af x være 11. 0:04:57.574,0:05:01.201 Lad os se hvad der sker hvis vi[br]tager endnu en variabel ind i ligningen. 0:05:01.201,0:05:06.448 Jeg skriver var x sættes til 10, 0:05:06.448,0:05:10.473 var y sættes til 20, 0:05:10.473,0:05:12.154 x sættes til y -- 0:05:12.154,0:05:13.835 åh ha-- 0:05:13.835,0:05:17.107 og y sættes til 7. 0:05:17.111,0:05:18.706 Okay, det jeg vil vide er, 0:05:18.706,0:05:22.103 hvad er værdien af x? 0:05:22.103,0:05:23.531 Lad os finde ud af det. 0:05:23.531,0:05:27.176 På denne linje her,[br]laver vi en ny variabel x, 0:05:27.176,0:05:29.171 og sætter den til værdien 10. 0:05:29.171,0:05:31.777 Så værdien af x er 10. 0:05:31.777,0:05:33.799 På denne linje, laver vi [br]en ny variabel y, 0:05:33.799,0:05:35.751 og giver den værdien 20. 0:05:35.751,0:05:37.043 Vi gør ikke noget ved x, 0:05:37.043,0:05:39.345 så værdien af x er stadig 10. 0:05:39.345,0:05:41.986 Herovre, skrev vi x sættes til y. 0:05:41.986,0:05:44.407 Det er forvirrende,[br]men hvis du tænker på det, 0:05:44.407,0:05:46.210 så ved vi at kun en af disse variable 0:05:46.210,0:05:48.453 er på det dejlige og sikre sted 0:05:48.453,0:05:50.378 og den anden variabel behandles 0:05:50.378,0:05:53.747 præcis som hvis den var et tal. 0:05:53.747,0:05:55.689 Så herovre, kan vi mentalt erstatte 0:05:55.689,0:05:57.791 dette y med værdien, som er 20, 0:05:57.791,0:06:01.765 og vi ved derfor at denne linje[br]betyder at "x sættes til 20". 0:06:01.772,0:06:05.029 Så værdien af x her er 20. 0:06:05.029,0:06:08.825 og så, herovre, hvor vi har y[br]på den dejlige og trygge plads, 0:06:08.825,0:06:10.421 men det er ikke så forvirrende, 0:06:10.421,0:06:12.698 for vi har bare et tal på den anden side. 0:06:12.698,0:06:17.424 Så her er spørgsmålet:[br]når jeg ændrer værdien af y her, 0:06:17.424,0:06:20.780 ændrer det også værdien af x heroppe? 0:06:20.780,0:06:26.048 Og svaret er:[br]Nej! Nej, nej, nej, nej, nej! 0:06:26.048,0:06:28.784 Du skal huske at heroppe, 0:06:28.784,0:06:31.760 er y bare som et tal. 0:06:31.760,0:06:34.618 Computeren ignorerer fuldstændigt[br]at det er en variabel, 0:06:34.618,0:06:36.270 glem at vi kan ændre den, 0:06:36.270,0:06:38.773 og den vil bare sige, 0:06:38.773,0:06:42.376 "Åh, y? Det du egentlig mener er 20." 0:06:42.376,0:06:44.741 Så lige her,[br]sætter vi kun x til et tal, 0:06:44.741,0:06:46.625 vi sætter den ikke til en variabel. 0:06:46.625,0:06:50.249 Vi sætter den til værdien af y,[br]som er 20, 0:06:50.249,0:06:54.034 og det betyder at værdien af x[br]bliver ved med at være 20, 0:06:54.034,0:06:58.369 selv efter vi har ændre værdien af[br]y-variablen på den sidste linje. 0:06:59.929,0:07:01.670 Puha! Fik du det? 0:07:01.670,0:07:05.229 Sådan, nu er I totalt eksperter[br]i at bruge variable. 0:07:05.229,0:07:07.299 Tillykke!