1 00:00:00,000 --> 00:00:03,800 We hebben al een supercoole variabele 2 00:00:03,800 --> 00:00:05,502 voor Winston zijn ooggrootte 3 00:00:05,502 --> 00:00:07,093 Dat was echt makkelijk 4 00:00:07,093 --> 00:00:09,036 Omdat het ons veel typwerk scheelde 5 00:00:09,036 --> 00:00:10,695 als we zijn ogen wilden veranderen 6 00:00:10,695 --> 00:00:11,649 Denk er aan 7 00:00:11,649 --> 00:00:13,573 Voor we variabelen hadden moesten we 8 00:00:13,573 --> 00:00:16,130 op vier plaatsen getallen veranderen 9 00:00:16,130 --> 00:00:17,962 maar kunnen we variabele gebruiken 10 00:00:17,962 --> 00:00:19,750 als niet alle nummers hetzelfde zijn? 11 00:00:19,750 --> 00:00:21,726 Wat als ik Winston een beetje wil verplaatsen? 12 00:00:21,726 --> 00:00:23,640 Ik kan ieder van de x coordinaten veranderen 13 00:00:23,640 --> 00:00:24,180 maar.... 14 00:00:24,180 --> 00:00:25,871 ze zijn niet allemaal hetzelfde 15 00:00:25,871 --> 00:00:28,579 dus ik kan ze niet zomaar vervangen door variabelen 16 00:00:28,579 --> 00:00:29,341 Maar wacht..... 17 00:00:29,341 --> 00:00:31,591 als ik eenmaal een nummer aan een variabel heb toegekend 18 00:00:31,591 --> 00:00:33,080 dan kan ik die variabele gebruiken net 19 00:00:33,080 --> 00:00:34,593 alsof het dat nummer is 20 00:00:34,593 --> 00:00:35,692 wat betekent dat... 21 00:00:35,692 --> 00:00:37,364 ik variabelen kan gebruiken om mee te rekenen 22 00:00:37,364 --> 00:00:38,482 Wat denk je hiervan? 23 00:00:38,482 --> 00:00:39,988 Laten we een variabele maken 24 00:00:39,988 --> 00:00:41,546 voor de x positie van Winston 25 00:00:41,546 --> 00:00:44,375 Ik schrijf "var x", dat is alles 26 00:00:44,375 --> 00:00:46,398 Ok, laten we x nu de waarde geven 27 00:00:46,398 --> 00:00:47,912 van Winston zijn gezicht 28 00:00:47,912 --> 00:00:54,773 dus de x coordinaat van zijn gezicht wordt 200 29 00:00:54,773 --> 00:00:56,539 Nou kan ik dit nummer vervangen 30 00:00:56,539 --> 00:00:59,053 door mijn nieuwe variabele x 31 00:00:59,053 --> 00:01:00,515 en als ik de waarde van x wijzig 32 00:01:00,515 --> 00:01:01,682 dan beweegt Winstons gezicht 33 00:01:01,682 --> 00:01:05,224 maar niet zijn ogen of mond 34 00:01:05,224 --> 00:01:07,816 om dat goed te krijgen 35 00:01:07,816 --> 00:01:10,997 gaan we de positie van zijn ogen en mond definieren 36 00:01:10,997 --> 00:01:14,039 relatief ten opzichte van de positie van zijn gezicht 37 00:01:14,039 --> 00:01:15,990 Dus de x coordinaat is het midden van zijn gezicht 38 00:01:15,990 --> 00:01:19,376 dus de x is het midden van zijn gezicht 39 00:01:19,376 --> 00:01:21,349 dus die is 200 40 00:01:21,349 --> 00:01:24,522 en laten we eerst zijn linker oog doen 41 00:01:24,522 --> 00:01:26,993 Deze ellips is zijn linker ook en we zien 42 00:01:26,993 --> 00:01:29,788 het getekent is op 150 43 00:01:29,788 --> 00:01:33,480 dus als ik hier kijk, dan is dat 150 44 00:01:33,480 --> 00:01:37,510 en ik weet dat 150 50 minder is dan 200 45 00:01:37,510 --> 00:01:39,293 dus zijn oog moet zijn... 46 00:01:39,293 --> 00:01:41,032 waar ook zijn gezicht zich bevindt 47 00:01:41,032 --> 00:01:42,530 min 50 48 00:01:42,530 --> 00:01:43,815 dus het moet zijn x 49 00:01:43,815 --> 00:01:45,740 wat aangeeft waar zijn gezicht is 50 00:01:45,740 --> 00:01:47,369 -50 51 00:01:47,369 --> 00:01:50,543 En nu als ik de waarde van de x coordinaat wijzig 52 00:01:50,543 --> 00:01:53,978 beweegt zijn oog mee 53 00:01:53,978 --> 00:01:55,752 Laten we de andere doen 54 00:01:55,752 --> 00:01:59,172 Dus ik zien dat zijn rechter oog op 300 getekent is 55 00:01:59,188 --> 00:02:01,738 dus dit hier is 300 56 00:02:01,738 --> 00:02:05,709 En van 300 weet ik dat het 100 meer is dan 200 57 00:02:05,709 --> 00:02:08,062 dus zijn rechter oog moet zijn 58 00:02:08,062 --> 00:02:10,175 waar ook zijn gezicht is plus 100 59 00:02:10,175 --> 00:02:12,423 dat is x + 100 60 00:02:12,423 --> 00:02:14,783 en nu gaan we naar zijn mond 61 00:02:14,783 --> 00:02:16,527 Zijn mond is getekent op 250 62 00:02:16,527 --> 00:02:18,610 dus hier hebben we 250 63 00:02:18,610 --> 00:02:23,130 en 250 is 200 plus 50 64 00:02:23,130 --> 00:02:27,808 Dus het is waar, oh, dat is een 5, ook zijn gezicht is 65 00:02:27,808 --> 00:02:31,118 x plus 50 66 00:02:31,170 --> 00:02:33,106 En nu veeg ik mijn krabbels weg 67 00:02:33,106 --> 00:02:36,505 Steeds als ik de waarde van x verander 68 00:02:36,505 --> 00:02:38,038 beweegt zijn gezicht 69 00:02:38,038 --> 00:02:39,604 yeeeeah! 70 00:02:39,604 --> 00:02:41,644 Nou voordat je gaat moet je nog 71 00:02:41,644 --> 00:02:43,143 een paar zaken weten over variabelen 72 00:02:43,143 --> 00:02:45,623 Als je eenmaal een variabele hebt gecreeert 73 00:02:45,626 --> 00:02:47,095 zoals "var x" 74 00:02:47,095 --> 00:02:49,313 geef je hem een waarde zo vaak als je wilt 75 00:02:49,313 --> 00:02:53,158 Dus nadat je hem de waarde 189 hebt gegeven 76 00:02:53,158 --> 00:02:55,226 kunnen we x 300 laten worden 77 00:02:55,226 --> 00:02:59,503 of.... x wordt 150 78 00:02:59,503 --> 00:03:02,196 en vanaf dat moment gaat de computer verder 79 00:03:02,196 --> 00:03:04,391 met ....wat we als laatste gegeven hebben 80 00:03:04,391 --> 00:03:05,811 in dit geval 150 81 00:03:05,843 --> 00:03:07,729 We hoeven alleen maar var te typen 82 00:03:07,729 --> 00:03:09,110 1 keer per variabele 83 00:03:09,110 --> 00:03:13,590 als ik var x = 150 later opschrijf 84 00:03:13,593 --> 00:03:16,104 dan creeer ik een compleet nieuwe variabele 85 00:03:16,104 --> 00:03:18,434 die de oude variabele x vernietigt 86 00:03:18,437 --> 00:03:24,307 daarna gebruikt de computer alleen de nieuwe variabele 87 00:03:24,307 --> 00:03:26,398 soms doe je dit soort zaken zonder 88 00:03:26,423 --> 00:03:28,702 dat er allerlei ellendige zaken gebeuren 89 00:03:28,702 --> 00:03:30,532 maar ik zou het niet adviseren 90 00:03:30,546 --> 00:03:32,746 Ik definieer de variabele maar 1 keer aan het begin, 91 00:03:32,781 --> 00:03:34,084 en 92 00:03:34,084 --> 00:03:37,783 kan ik Winston simpel van het scherm halen 93 00:03:37,783 --> 00:03:40,143 Zo dat ik mijn volgende punt kan maken 94 00:03:40,143 --> 00:03:42,509 Dus iedere keer als je een variabele hebt... 95 00:03:42,509 --> 00:03:44,337 die ergens aan gelijk is.... 96 00:03:44,337 --> 00:03:47,839 dan is die variabele veilig thuis 97 00:03:47,839 --> 00:03:50,249 links van het "=" teken is de enige plaats 98 00:03:50,274 --> 00:03:53,641 waar een variabele echt zichzelf kan zijn 99 00:03:53,641 --> 00:03:56,307 omdat dat de enige plaats is waar de computer 100 00:03:56,307 --> 00:03:57,887 hem ziet als een variabele 101 00:03:57,895 --> 00:04:00,792 Overal elders wordt hij behandelt als een waarde 102 00:04:00,792 --> 00:04:02,808 dus zelfs we iets doen zoals dit.... 103 00:04:02,808 --> 00:04:05,830 Var....X gets 10 104 00:04:05,830 --> 00:04:10,508 En then....X gets X....Wooo, computer 105 00:04:10,508 --> 00:04:13,316 woo....verwarrend 106 00:04:13,316 --> 00:04:17,709 Links staat X de vrije onafhankelijke variabele ... 107 00:04:17,709 --> 00:04:20,957 Eentje die kan groeien en veranderen 108 00:04:20,957 --> 00:04:25,827 maar rechts is het alleen maar 10 109 00:04:25,861 --> 00:04:30,230 Zo zielig...maar dat betekent dat we hele handige 110 00:04:30,230 --> 00:04:32,026 zaken kunnen doen als dit: 111 00:04:32,026 --> 00:04:33,532 X wordt X + 1 112 00:04:33,532 --> 00:04:35,024 Dus aan de linkerkant 113 00:04:35,024 --> 00:04:37,483 hebben we onze variabele in zijn happy home 114 00:04:37,483 --> 00:04:40,667 en rechts hebben we deze variabele 115 00:04:40,667 --> 00:04:42,838 waarvan we weten dat het gewoon een nummer is 116 00:04:42,838 --> 00:04:44,550 dus het is gewoon 10 117 00:04:44,550 --> 00:04:47,369 dus we kunnen dit vervangen door x wordt x+1 118 00:04:47,369 --> 00:04:50,873 wat alleen betekent dat x 11 wordt 119 00:04:50,873 --> 00:04:53,980 dus deze hele regel zegt alleen dat x 11 wordt 120 00:04:53,980 --> 00:04:57,000 Van nu af aan is de waarde van X 11 121 00:04:57,000 --> 00:04:58,910 Laten we kijken wat er gebeurt 122 00:04:58,910 --> 00:05:02,614 Als we nog een variabele toevoegen 123 00:05:02,614 --> 00:05:05,394 Ik doe ...var...x...wordt 10 124 00:05:05,408 --> 00:05:09,328 var Y wordt 20 125 00:05:09,328 --> 00:05:13,343 X wordt Y.....uh mwmrw.... 126 00:05:13,343 --> 00:05:17,140 en Y wordt 7 127 00:05:17,140 --> 00:05:21,900 OK. Wat is nu de waarde van X? 128 00:05:21,900 --> 00:05:23,560 Laten we dat uitzoeken... 129 00:05:23,560 --> 00:05:26,098 Dus op deze regel hier.... 130 00:05:26,098 --> 00:05:28,079 maken we een nieuwe variable X..... 131 00:05:28,079 --> 00:05:29,705 en die krijgt de waarde 10 132 00:05:29,705 --> 00:05:31,810 Dus de waarde van X is 10.... 133 00:05:31,810 --> 00:05:34,591 Op deze regel....maken we de nieuwe variabele Y 134 00:05:34,591 --> 00:05:36,121 en geven het de waarde 20 135 00:05:36,146 --> 00:05:37,906 Dus we doen niets met X 136 00:05:37,906 --> 00:05:39,598 dus de waarde van X is nog steeds 10 137 00:05:39,598 --> 00:05:42,261 Hier zien we dat X... Y wordt! 138 00:05:42,261 --> 00:05:43,569 Dat ziet er raar uit.... 139 00:05:43,569 --> 00:05:44,878 maar als je er over nadenkt dan weet je dat.... 140 00:05:44,878 --> 00:05:47,757 maar 1 van deze 2 variabelen is het veilige thuis 141 00:05:47,757 --> 00:05:53,640 en de andere variable wordt behandelt als een nummer 142 00:05:53,640 --> 00:05:56,507 dus hier kunnen we in ons hoofd de Y vervangen 143 00:05:56,507 --> 00:06:00,486 door de waarde... en we weten dat deze regel.... 144 00:06:00,486 --> 00:06:02,186 eigenlijk betekent dat X 20 wordt 145 00:06:02,186 --> 00:06:04,592 dus de waarde van X hier is ....20! 146 00:06:04,592 --> 00:06:07,499 en dan....hier hebben we...Y... 147 00:06:07,499 --> 00:06:09,019 in zijn veilige thuis maar 148 00:06:09,019 --> 00:06:11,139 dat verwart alleen maar omdat er alleen maar 149 00:06:11,139 --> 00:06:13,200 een nummer aan hebben toegekend 150 00:06:13,200 --> 00:06:14,708 dus hier is de grote vraag: 151 00:06:14,708 --> 00:06:17,577 als ik de waarde van Y hier verander, 152 00:06:17,577 --> 00:06:20,330 verandert dat de waarde van X hier? 153 00:06:20,330 --> 00:06:22,663 en het antwoord is..... 154 00:06:22,663 --> 00:06:26,312 NEEeeEEEeeeEEE....Nee....Nee....Neee 155 00:06:26,312 --> 00:06:28,349 Je moet onthouden dat hierboven 156 00:06:28,349 --> 00:06:31,619 Y alleen behandeld is als een nummer 157 00:06:31,619 --> 00:06:34,739 de computer gaat negeren dat Y een variabele is 158 00:06:34,739 --> 00:06:36,718 vergeet dat Y kan veranderen 159 00:06:36,718 --> 00:06:42,295 en denkt alleen....ooh...wat je echt bedoeld is 20 160 00:06:42,295 --> 00:06:44,846 dus hier geven we alleen een nummer aan X 161 00:06:44,846 --> 00:06:46,872 We geven geen variabele mee 162 00:06:46,872 --> 00:06:50,018 maar de waarde van Y, die 20 is 163 00:06:50,018 --> 00:06:53,884 en dat betekent dat de waarde van X 20 blijft 164 00:06:53,884 --> 00:07:00,152 zelfs nadat we de waarde van Y in de laatste regel veranderen 165 00:07:00,152 --> 00:07:01,654 Wooo....begrepen?.... 166 00:07:01,654 --> 00:07:05,480 En nu zijn jullie experts in variabelen 167 00:07:05,480 --> 00:07:10,000 Gefeliciteerd!