Speciale operatoren

Introductie

Een operator is een soort telefoniste. Oh nee, dat was vroeger, vóór het computer tijdperk. Later kreeg je zogenaamde computer operators, mensen die de computer moesten bedienen. Ja, dat was echt een bestaande baan. Mijn broer is zelf computer operator geweest, nu al meer dan 30 jaar geleden. Wat heeft dat met dit hoofdstuk te maken? Helemaal niets, maar toch leuk om te vertellen.

operator? Can you connect me with the president please?
dit is niet mijn broer, voor alle duidelijkheid

Een operator in programmeren is een hulpmiddel dat een aantal variabelen neemt en er een actie op uitvoert. Dat klinkt heel vaag, en dat is het ook, dus geef ik zometeen wat voorbeelden. Je kent dit vast wel van de rekenles op school: Veel gebruikte operatoren zijn

  • + (optellen)
  • - (aftrekken)
  • * (vermenigvuldigen)
  • / (delen)

staartdeling
Een speciale operator is de modulo operator (%). Deze gebruik je net als + en -. Je kan dus schrijven '7 % 2'. De uitkomst is de rest na deling, in dit geval 1, omdat 3*2+1 = 7. Als je nog weet hoe je een staartdeling doet, dan zag je vaak een rest overblijven na het delen. Dit is precies wat modulo doet. Modulo is erg handig als je een bepaalde actie eens in de zoveel keer wilt uitvoeren, bijv. laat elk 100e object zien. Een goede vergelijking voor modulo is de minutenwijzer op een klok. Als de wijzer op 'tien voor' staat en je telt er 20 minuten bij op, dan kom je op ' tien over'. Dat betekent dat de klok eigenlijk (50+20) % 60 doet.

Voorbeeld

In games

Operatoren zijn essentieel voor alle programma's, en dus ook voor games. Vooral de modulo operator is belangrijk bij het herhaald laten terugkomen van elementen in het spel. Denk aan een kaartspel zoals patience. Elke derde kaart wordt omgedraaid, en wanneer de stapel klaar is, begint het opnieuw bovenaan. Denk ook aan het bijhouden van tijd: elke 30 frames in een spel wil je 1 seconde aftellen, wanneer je een spel draait op 30 frames per seconde (FPS).

fps

Opdracht

  1. Maak een variabele, en zet er een getal in
  2. Bereken de rest na deling met 2, 3, 5 en 7, en druk deze af. Gebruik hierbij de modulo (%) operator

Let op met

  • Modulo correct gebruiken (bijv. count % 10)

Verwacht resultaat

Als de input is A=7

1
1
2
0

Test je programma met diverse getallen 

Veelgemaakte fouten

  • % verkeerd gebruiken (2 % 3 in plaats van 3 % 2)
  • geen variabele gebruiken (7 % 2 in plaats van A % 2)
  • typefouten (syntax error)

Bronnen

  1. https://nl.wikipedia.org/wiki/Beelden_per_seconde (FPS)
  2. https://nl.wikipedia.org/wiki/Rest

Lijst met discussies. Toont 1 van 1 discussies.
Status Discussie Begonnen door Laatste bericht Antwoorden Acties
antwoord
Foto van Verwijderde gebruiker
Verwijderde gebruiker
Foto van Verwijderde gebruiker
Verwijderde gebruiker
0