We hebben al een supercoole variabele
voor Winston zijn ooggrootte
Dat was echt makkelijk
Omdat het ons veel typwerk scheelde
als we zijn ogen wilden veranderen
Denk er aan
Voor we variabelen hadden moesten we
op vier plaatsen getallen veranderen
maar kunnen we variabele gebruiken
als niet alle nummers hetzelfde zijn?
Wat als ik Winston een beetje wil verplaatsen?
Ik kan ieder van de x coordinaten veranderen
maar....
ze zijn niet allemaal hetzelfde
dus ik kan ze niet zomaar vervangen door variabelen
Maar wacht.....
als ik eenmaal een nummer aan een variabel heb toegekend
dan kan ik die variabele gebruiken net
alsof het dat nummer is
wat betekent dat...
ik variabelen kan gebruiken om mee te rekenen
Wat denk je hiervan?
Laten we een variabele maken
voor de x positie van Winston
Ik schrijf "var x", dat is alles
Ok, laten we x nu de waarde geven
van Winston zijn gezicht
dus de x coordinaat van zijn gezicht wordt 200
Nou kan ik dit nummer vervangen
door mijn nieuwe variabele x
en als ik de waarde van x wijzig
dan beweegt Winstons gezicht
maar niet zijn ogen of mond
om dat goed te krijgen
gaan we de positie van zijn ogen en mond definieren
relatief ten opzichte van de positie van zijn gezicht
Dus de x coordinaat is het midden van zijn gezicht
dus de x is het midden van zijn gezicht
dus die is 200
en laten we eerst zijn linker oog doen
Deze ellips is zijn linker ook en we zien
het getekent is op 150
dus als ik hier kijk, dan is dat 150
en ik weet dat 150 50 minder is dan 200
dus zijn oog moet zijn...
waar ook zijn gezicht zich bevindt
min 50
dus het moet zijn x
wat aangeeft waar zijn gezicht is
-50
En nu als ik de waarde van de x coordinaat wijzig
beweegt zijn oog mee
Laten we de andere doen
Dus ik zien dat zijn rechter oog op 300 getekent is
dus dit hier is 300
En van 300 weet ik dat het 100 meer is dan 200
dus zijn rechter oog moet zijn
waar ook zijn gezicht is plus 100
dat is x + 100
en nu gaan we naar zijn mond
Zijn mond is getekent op 250
dus hier hebben we 250
en 250 is 200 plus 50
Dus het is waar, oh, dat is een 5, ook zijn gezicht is
x plus 50
En nu veeg ik mijn krabbels weg
Steeds als ik de waarde van x verander
beweegt zijn gezicht
yeeeeah!
Nou voordat je gaat moet je nog
een paar zaken weten over variabelen
Als je eenmaal een variabele hebt gecreeert
zoals "var x"
geef je hem een waarde zo vaak als je wilt
Dus nadat je hem de waarde 189 hebt gegeven
kunnen we x 300 laten worden
of.... x wordt 150
en vanaf dat moment gaat de computer verder
met ....wat we als laatste gegeven hebben
in dit geval 150
We hoeven alleen maar var te typen
1 keer per variabele
als ik var x = 150 later opschrijf
dan creeer ik een compleet nieuwe variabele
die de oude variabele x vernietigt
daarna gebruikt de computer alleen de nieuwe variabele
soms doe je dit soort zaken zonder
dat er allerlei ellendige zaken gebeuren
maar ik zou het niet adviseren
Ik definieer de variabele maar 1 keer aan het begin,
en
kan ik Winston simpel van het scherm halen
Zo dat ik mijn volgende punt kan maken
Dus iedere keer als je een variabele hebt...
die ergens aan gelijk is....
dan is die variabele veilig thuis
links van het "=" teken is de enige plaats
waar een variabele echt zichzelf kan zijn
omdat dat de enige plaats is waar de computer
hem ziet als een variabele
Overal elders wordt hij behandelt als een waarde
dus zelfs we iets doen zoals dit....
Var....X gets 10
En then....X gets X....Wooo, computer
woo....verwarrend
Links staat X de vrije onafhankelijke variabele ...
Eentje die kan groeien en veranderen
maar rechts is het alleen maar 10
Zo zielig...maar dat betekent dat we hele handige
zaken kunnen doen als dit:
X wordt X + 1
Dus aan de linkerkant
hebben we onze variabele in zijn happy home
en rechts hebben we deze variabele
waarvan we weten dat het gewoon een nummer is
dus het is gewoon 10
dus we kunnen dit vervangen door x wordt x+1
wat alleen betekent dat x 11 wordt
dus deze hele regel zegt alleen dat x 11 wordt
Van nu af aan is de waarde van X 11
Laten we kijken wat er gebeurt
Als we nog een variabele toevoegen
Ik doe ...var...x...wordt 10
var Y wordt 20
X wordt Y.....uh mwmrw....
en Y wordt 7
OK. Wat is nu de waarde van X?
Laten we dat uitzoeken...
Dus op deze regel hier....
maken we een nieuwe variable X.....
en die krijgt de waarde 10
Dus de waarde van X is 10....
Op deze regel....maken we de nieuwe variabele Y
en geven het de waarde 20
Dus we doen niets met X
dus de waarde van X is nog steeds 10
Hier zien we dat X... Y wordt!
Dat ziet er raar uit....
maar als je er over nadenkt dan weet je dat....
maar 1 van deze 2 variabelen is het veilige thuis
en de andere variable wordt behandelt als een nummer
dus hier kunnen we in ons hoofd de Y vervangen
door de waarde... en we weten dat deze regel....
eigenlijk betekent dat X 20 wordt
dus de waarde van X hier is ....20!
en dan....hier hebben we...Y...
in zijn veilige thuis maar
dat verwart alleen maar omdat er alleen maar
een nummer aan hebben toegekend
dus hier is de grote vraag:
als ik de waarde van Y hier verander,
verandert dat de waarde van X hier?
en het antwoord is.....
NEEeeEEEeeeEEE....Nee....Nee....Neee
Je moet onthouden dat hierboven
Y alleen behandeld is als een nummer
de computer gaat negeren dat Y een variabele is
vergeet dat Y kan veranderen
en denkt alleen....ooh...wat je echt bedoeld is 20
dus hier geven we alleen een nummer aan X
We geven geen variabele mee
maar de waarde van Y, die 20 is
en dat betekent dat de waarde van X 20 blijft
zelfs nadat we de waarde van Y in de laatste regel veranderen
Wooo....begrepen?....
En nu zijn jullie experts in variabelen
Gefeliciteerd!