-
In deze video wil ik je
-
een idee geven van
-
wat een computerprogramma is.
-
En als je mee wilt doen,
-
wat ik je erg adviseer, omdat de enige manier om te leren programmeren is
-
dat je zelf alles uitprobeert.
-
Deze cursus is gericht op Python. Ik ga veel van het
-
programmeren doen in Python.
-
Deze omgeving heet PyScripter. P-Y-S-C-R-I-P-T-E-R. Het is gratis,
-
het is open-bron software.
-
En ik gebruik Python... Ik geloof Python 2.6 of 2.7.
-
Als je Python 2 gebruikt zijn de commando's dezelfde als de mijne,
-
ze werken hetzelfde. Maar als je Python 3 gebruik moet je
-
af en toe iets andere variaties gebruiken.
-
Als dat nodig is zeg ik het wel.
-
Laten we gewoon eens beginnen met het schrijven van een computerprogramma.
-
Wat hier zo cool aan is, is dat we ons programma hier kunnen schrijven.
-
En eigenlijk bewerken we gewoon tekst in een bestand.
-
Meer is het niet.
-
Het is een verzameling instructies en de computer begint
-
bovenaan, en gaat naar beneden terwijl hij de instructies leest.
-
Alhoewel je later zult zien
-
dat er manieren zijn om de computer te laten rondspringen en lussen te maken
-
binnen de instructies zodat hij dingen steeds opnieuw kan doen of iets over kan slaan.
-
Nu dat gezegd is, kunnen we beginnen met het schrijven van een simpel programma,
-
en terwijl we dat doen zullen we een paar van de basisprincipes tegenkomen die een computerprogramma kan hebben.
-
Ik zal een heel heel simpel programma schrijven.
-
Een erg eenvoudig computerprogramma dus,
-
zou letterlijk maar één expressie zijn.
-
Ik schrijf gewoon 'print 3+7', het zal dus letterlijk
-
gewoon 3+7 nemen en dat weergeven. Het zal 3+7
-
doorgeven aan de 'print'-functie die ingebouwd is in Python.
-
Misschien kan ik het beter schrijven als: print (3+7).
-
Dit gaan we opslaan. Er is dus letterlijk maar één... als je erover nadenkt. Slechts één opdracht
-
hier op de bovenste lijn. Er staat print 3+7.
-
We voegen nog een opdracht toe,
-
zodat je kan zien dat het van boven naar beneden gaat.
-
Ik voeg er nog een toe: print(2-1)
-
en daarna doen we: print("this is a chunk of text")
-
Laten we eens kijken wat dit programma gaat doen.
-
Ik sla het dus op.
-
Ik sla het dus op.
-
Ik heb het opgeslagen als "testarea.py". Vertelt ehm... Dat is een...
-
De extensie .py geeft aan dat het een Python bestand is.
-
Nu ga ik het programma draaien.
-
Wat is er zo fijn aan deze ontwikkelomgeving,
-
deze IDE of Integrated Development Environment, is dat
-
dat je op dezelfde plaats je programma kan typen en laten draaien.
-
Het kan je tekst ook kleuraanduidingen geven, zodat je kunt zien wat een
-
functie is, wat geen functie is, de verschillende datatypes... We gaan het later nog over meer datatypes hebben.
-
Laten we het programma starten en kijken wat er gebeurt.
-
Ziezo, we hebben het gedraaid!
-
Dus het gaf 10, daarna 1 en daarna gaf het
-
"this is a chunk of text" weer.
-
Dat is precies wat we het wilden dat het zou doen.
-
En het deed het op volgorde.
-
Het begon bovenaan, het zag 3+7 als gelijk aan 10
-
en gaf het weer, het gaf hier 10 weer.
-
En daarna gaf het 2-1 weer, tot slot gaf het "this is a chunk of text" weer.
-
Nog iets wat ik je wil laten zien
-
is het idee van datatypes.
-
Dus zelfs als je dit voorbeeld hebt gezien
-
dacht je misschien dat er verschillen zijn tussen
-
de 3 of 2 of 1 of 7 en "this is a chunk of text".
-
Dit is een getal. Ik kan getallen optellen. Ze stellen
-
een bepaalde hoeveelheid voor. Terwijl dit hier een
-
stuk tekst voorstelt. En je voelt het al.
-
Het zijn verschillende datatypes.
-
De 3 en 7 en 1... dit zijn numerieke tekens.
-
In dit geval zijn het gehele getallen.
-
En je kan... In deze hier,
-
dit is eigenlijk een String,
-
een woord dat je veel hoort in de informatica.
-
Dit is eigenlijk, aan het verwijzen naar een String... met karakters.
-
en in Python kunnen we zelfs vragen wat deze dingen zijn.
-
Dus je kan de functie "type" erop loslaten
-
dus nu zou het 3+7 moeten weergeven, in plaats van 10.
-
Dat proberen we eens. Ik zal gewoon 2-1 weergeven om je het verschil te laten zien.
-
Daarna zal ik het type weergeven... Het type van dit blokje text.
-
Het type van dit blokje text.
-
En we slaan het op. Ik typ CTRL+S, dat is de sneltoets om dit op te slaan.
-
En dan probeer ik dit programma te draaien. Zo, alsjeblieft.
-
De opdracht is uitgevoerd. Het begint met de binnenste haakjes.
-
3+7 is 10. Dan probeert het om het type van 10 te nemen, en dat is 'int'.
-
Een type int, en dan geeft het dat type int weer.
-
Hier zie je dat. Er staat type 'int.
-
int is de afkorting van integer (geheel getal).
-
Daarna zegt het geef (2-1) weer. Dat doet het op deze regel hier,
-
het geeft 1 weer, en dan het type van dit hele ding
-
hier. Dus in plaats van de tekst weer te geven,
-
geeft het het type weer. En dit type is een String.
-
Het volgende dat ik je wil laten zien
-
als we experimenteren met programma's is
-
het gegeven Variabele. Omdat we deze dingen
-
op verschillende plaatsen willen opslaan.
-
We zullen in toekomstige video's leren dat we in Python
-
eerder labels gebruiken voor deze dingen,
-
en dat de labels kunnen veranderen.
-
Laten we een compleet ander programma schrijven met variabelen.
-
Wat zo leuk is aan Python,
-
hoewel sommige mensen het niet leuk vinden, is dat
-
je elk datatype in elk type Variabele kan plaatsen.
-
Dus je kan zeggen a=3+5, dan kunnen we zeggen
-
b=a*a-a-1
-
[Opmerking: * betekent 'keer', het wordt gebruikt voor vermenigvuldiging.]
-
en je kan zeggen c=a*b (c is gelijk aan a keer b)
-
Ik plaats hier wat spaties, dan ziet het er netter uit.
-
Uiteindelijk weergeven we c. Als je wilt kun je verdergaan
-
en proberen erachter te komen hoe c eruit gaat zien
-
of we kunnen gewoon dit programma draaien.
-
Dus laten we het programma draaien en dan
-
kunnen we terugkijken om te zien of hij het juist heeft gedaan.
-
Ik ga het programma opslaan, en dan draaien.
-
We krijgen 440 voor c. Eens kijken of dat klopt.
-
3+5 is 8. Dus het label 'a' verwijst naar 8.
-
Op elke plek in het programma, totdat we 'a' opnieuw definiëren,
-
Elke keer als je 'a' gebruikt, zegt het programma: a is 8. A verwijst naar 8.
-
Dus als je hier naar toe gaat om 'b' te definiëren zegt het
-
a*a. Het gebruikt de juiste rekenvolgorde, dus doe eerst je vermenigvuldigingen.
-
A*a is 64.
-
64 - a is 64 - 8, wat 56 is. Min 1 is 55.
-
Dus 'b' is 55. En 'c' wordt a*b,
-
8 maal 55 is inderdaad 440. Alles is correct berekend.
-
Misschien wil je zien wat er gebeurt als
-
je verschillende "a"'s krijgt. Dat kun je uitproberen.
-
Je kan gewoon veranderen wat er hier gebeurt voor verschillende a's.
-
Laten we "a" gelijk maken aan -6
-
en ons programma draaien om te zien wat er gebeurt.
-
We krijgen -246. En je kan het zelf controleren.
-
Je gaat regel voor regel, en deze variabelen verwijzen naar
-
dat waarnaar ze gedefinieerd zijn te verwijzen,
-
en kijken of je de uitkomst krijgt die we hier krijgen.
-
Als programma's gewoon een hoop commando's waren
-
en je altijd er van boven naar beneden doorheen zou gaan,
-
zou je niet echt interessante dingen kunnen doen.
-
Om echt interessante dingen te doen zal je
-
dingen zien zoals voorwaardelijken en lussen.
-
Laten we een voorwaardelijke bekijken. Ik zal dat hier neerzetten,
-
En "If (a<0:)" In dat geval, geven we (c) weer,
-
typ dan 'else:', en in dit geval geven we dan (c-a) weer.
-
Dit is dus interessant. Je hebt misschien al een voorgevoel van wat er gaat gebeuren.
-
Maar laten we het opslaan.
-
Het is ongelofelijk hoeveel je kunt doen met alleen
-
deze voorwaardelijke. Dus dit zegt:
-
als 'a' minder is dan 0, doe dit, anders
-
als 'a' niet minder is dan 0, doe dan dit hier.
-
Dus merk op dat we hier niet gewoon van boven naar beneden gaan.
-
Het hangt er vanaf of 'a' minder dan 0 is of niet,
-
hij deze regel uitvoert,
-
of deze regel.
-
En waarom Python wist dat alleen deze regel uit moest worden gevoerd.
-
'print(c)' als 'a' minder was dan 0 is omdat
-
print(c) is ingesprongen. Dat inspringen is onderdeel van deze voorwaarde.
-
De manier dat hij weet dat er nieuwe voorwaarden voor hem zijn
-
is vanwege deze dubbele punt hier.
-
Als 'a' niet minder is dan 0, dan voert hij de 'else' voorwaarde uit.
-
Als je hierna iets anders wil doen,
-
ongeacht of 'a' minder is dan 0 is of niet,
-
kan je het gewoon uit deze voorwaardelijke halen door van de
-
toevoeging af te komen. Dus nu kunnen we gewoon 'we are done with the program' weergeven.
-
Laten we nog wat toevoegen aan deze voorwaardelijke.
-
Laten we hier 'a<0' weergeven.
-
Dus let op: dit zal niet worden uitgevoerd.
-
Dit staat binnen in een regel tekst, dus het zal gewoon
-
dat ding weergeven. Hier zeggen we
-
print('a is not less than 0').
-
Dit is een interessant programma. We zullen het eens draaien.
-
Hopelijk werkt het. Ik sla het op. Nu gaan we het starten.
-
En het geeft 'a<0' weer, dus het laat zien dat we in de voorwaardelijke zitten.
-
Het geeft dit weer. Daarna geeft het 'c' weer, wat -246 is.
-
Het voert dit niet uit, omdat dat alleen maar
-
uitgevoerd zou worden als a niet minder dan 0 zou zijn.
-
Maar dan gaat het uit deze voorwaardelijke en geeft
-
'we are done with the program' sowieso weer.
-
Laten we nu 'a' veranderen om te kijken of we de andere
-
voorwaardelijke werkend kunnen krijgen. Laten we 'a' groter dan 0 maken.
-
Laten we "a" gelijk maken aan 9 en het programma draaien.
-
Dus daar. 'a' is 9. Het bekijkt of 'is a minder dan 0?',
-
nou, 'a' is niet minder dan 0, dus dit wordtniet uitgevoerd,
-
het gaat naar de 'else' voorwaardelijke.
-
Dus nu geeft het 'a is not less than 0' weer
-
wat het hier heeft gedaan, daarna gaf het c-a weer,
-
wat 630 is. Het gaat deze voorwaarde uit,
-
en ongeacht of 'a' groter dan 0 is of niet,
-
geeft het 'we are done with the program' weer.