Programmeren les 11

1 / 22
volgende
Slide 1: Tekstslide
InformaticaMiddelbare schoolhavo, vwoLeerjaar 4

In deze les zitten 22 slides, met interactieve quizzen en tekstslides.

time-iconLesduur is: 60 min

Onderdelen in deze les

Slide 1 - Tekstslide

Als de computer een stuk programmacode uitvoert, is het mogelijk dat deze code bepaalde delen wel en andere delen niet uitvoert. Meestal gebeurt dit aan de hand van de waarde van variabelen. Als je wilt dat de code keuzes kan maken, dan gebruik je bij het programmeren verschillende selectiestatements in combinatie met operatoren

Slide 2 - Tekstslide

Vergelijkingsoperatoren en booleaanse waarden
Een vergelijkingsoperator gebruik je om twee waarden met elkaar te vergelijken. Zo kan bijvoorbeeld een webshop controleren of het bedrag van alle producten in het winkelwagentje groter is dan 50 euro. Als dat zo is, worden de producten gratis verzonden.
Als dat niet zo is, moet de klant verzendkosten betalen.

Slide 3 - Tekstslide

In dit codevoorbeeld zijn er twee variabelen.
  • Een variabele met als waarde het totaalbedrag
  • een variabele met als waarde de grens wanneer er geen verzendkosten meer zijn


Slide 4 - Tekstslide

Bij het maken van stroomdiagrammen heb je het verschil gezien tussen het is-teken in een toekenning en een vergelijking.
•    In het blok korting = 0 is er sprake van een toekenning.
•    In het blok kortingscode = "VALENTIJNSDAG" is het is-teken een vergelijkingsoperator.

In Python is dit iets anders. Daar gebruik je het is-teken alleen voor een toekenning. Zoals je in de tabel kunt zien, gebruik je in een vergelijking twee keer het =-teken. In Python gebruik je voor de vergelijking dus kortingscode == "VALENTIJNSDAG".

Slide 5 - Tekstslide

In combinatie met vergelijkingsoperatoren kunnen ook de rekenkundige operatoren worden gebruikt, zoals je hier kan zien

Slide 6 - Tekstslide

Booleaanse operatoren
Om bijvoorbeeld getallen met elkaar te vergelijken, gebruik je vergelijkingsoperatoren zoals == en <. Toch kan je deze niet allemaal gebruiken bij het vergelijken van booleans.
Een boolean heeft immers als waarde True (1) of False (0).
Een vergelijking met kleiner dan of groter dan is dus niet mogelijk.

Er zijn enkele vergelijkingsoperatoren die speciaal voor booleans zijn. Ze worden booleaanse operatoren (Engels: boolean operators) genoemd. Eén van die operatoren is and, wat EN betekent, zoals je nog weet van logica:

print(10 < 15 and 35 < 50)

Slide 7 - Tekstslide

De uitvoer van bovenstaande code is True. Hoe komt dat?
•    Eerst worden beide vergelijkingen uitgevoerd.
10 < 15   Resultaat:   True (1)
35 < 50   Resultaat:   True (1)
•    Daarna wordt er gekeken of beide vergelijkingen True (1) zijn met de booleaanse operator and. De uitkomst daarvan is True, omdat de eerste EN de tweede vergelijking waar zijn.


Slide 8 - Tekstslide

If .. else en elif
Het if-statement maakt het mogelijk om stukken code voorwaardelijk uit te voeren. Bekijk het voorbeeld hiernaast eens.
Als dit programma wordt uitgevoerd, zal de melding 'De bestelling wordt gratis verzonden' worden weergegeven.

Het woord 'if' wordt altijd gevolgd door een vergelijking.
De vergelijking is waar (True) of onwaar (False).
Aan het einde van de vergelijking staat een dubbele punt :.
Als de vergelijking waar is, worden de coderegels onder het if-statement uitgevoerd.

Slide 9 - Tekstslide

In het voorbeeld wordt er geen code uitgevoerd als de vergelijking niet waar (False) is. Door middel van een else-statement kun je code uitvoeren, als de vergelijking van het if-statement niet waar is.
Net als bij het if-statement, komt er aan het einde van het else-statement een dubbele punt.

Slide 10 - Tekstslide

Soms moeten er meerdere vergelijkingen binnen één if-statement worden uitgevoerd. Hiervoor kun je de booleaanse operatoren gebruiken. Bekijk het volgende voorbeeld. Het if-statement bevat nu een dubbele vergelijking.

Slide 11 - Tekstslide

Herhaling
Als je een stuk code twee keer achter elkaar uit moet voeren, kun je dezelfde code twee keer onder elkaar plaatsen. Maar als een stuk code tientallen, of misschien wel honderden keren achter elkaar uitgevoerd moet worden, is het helemaal niet handig om de code voor al die keren neer te zetten. Je kunt dan beter een loop-statement gebruiken. Daarmee kun je een stuk code herhalen.

Herhaling wordt ook wel iteratie genoemd.

Slide 12 - Tekstslide

De gebruiker kan van zo veel producten als hij wil, de prijs invoeren. Dat kan, omdat er een iteratieblok in het diagram zit. Zolang de variabele nogEenProduct de waarde 'ja' heeft, kan de gebruiker een prijs invoeren. Als de gebruiker iets anders dan 'ja' invoert, stapt het programma uit de loop. Dan gaat het naar het blok waarin de variabele teBetalen wordt getoond.

Slide 13 - Tekstslide

While lijkt, als je goed kijkt, erg veel op if.
Beide statements voeren pas de bijbehorende code uit als een vergelijking True is.
Het verschil is dat bij een if-statement deze code maar één keer wordt uitgevoerd.
Bij een while-loop wordt de code net zolang uitgevoerd als de vergelijking True blijft.

Slide 14 - Tekstslide

Je ziet de variabele prijs met een waarde van 10. Zolang de waarde van de variabele prijs kleiner is dan 100 wordt de code in de while-loop uitgevoerd. De while-loop zorgt ervoor dat iedere keer dat de loop doorlopen wordt de variabele prijs opgehoogt wordt met 25.

Slide 15 - Tekstslide

Je ziet een operator += die we nog niet besproken hebben. Het betekent 'verhogen met'. De variabele prijs wordt dus verhoogt met 25.

Slide 16 - Tekstslide

Maar wat nu als de voorwaarde altijd True blijft?
Dan zal de while-loop ook altijd door blijven gaan met uitvoeren! Dit wordt een oneindige-loop genoemd (Engels: infinite-loop).

Slide 17 - Tekstslide

For
Kijk naar het voorbeeld hiernaast. Wanneer deze code uitgevoerd wordt, komen de getallen 1 t/m 10 onder elkaar te staan als output.
Bij een for-loop hoort een variabele, de zogenoemde loopvariabele.
Hoewel het niet verplicht is, geven programmeurs wereldwijd deze variabele vaak de naam i (van integer).
Achter het woordje in moet worden opgegeven binnen welk bereik van i de code van de for-loop moet worden uitgevoerd.

Het codefragment range(1,11) geeft de getallen van 1 t/m 10. Iedere keer dat de code in de for-loop wordt uitgevoerd, wordt de loopvariabele automatisch met 1 verhoogd.

Slide 18 - Tekstslide

We zeggen net dat iedere keer dat de code in de for-loop wordt uitgevoerd, de loopvariabele automatisch met 1 wordt verhoogd.
Het is mogelijk om dit aan te passen. Bijvoorbeeld om de loopvariabele iedere keer dat de loop wordt doorlopen met 5 te verhogen, zoals je hiernaast kan zien.
Bij een for-loop moet altijd het bereik worden opgegeven. Hiermee wordt aangegeven hoe vaak de code in de for-loop moet worden uitgevoerd. Vaak wordt dit bereik opgegeven door middel van range(x,y).
Het is ook mogelijk om het bereik op een andere manier op te geven. Probeer deze codes maar eens uit te voeren:

Slide 19 - Tekstslide


Na deze les, 
wil ik...
de uitleg nog 1 keer horen
meer voorbeelden krijgen
meer oefeningen maken
de leerstof thuis nog even bekijken
overgaan naar nieuwe leerstof
nog meer te weten komen over de leerstof
niet meer te weten komen over de leerstof

Slide 20 - Poll


Hoe vond je 
deze les?
😒🙁😐🙂😃

Slide 21 - Poll

Volgende keer
  • functies
  • methoden
  • functies met meerdere parameters
  • geldigheid van variabelen en parameters

Slide 22 - Tekstslide