Voorbeeld: tel het aantal keren dat het knopje wordt ingedrukt

Stel je wilt meten hoe vaak op het knopje wordt gedrukt. We beschrijven twee manieren.

Manier 1

teller++ betekent: hoog de teller op met 1. Het toestandsdiagram heeft maar één toestand.

Je kunt dit omzetten naar een programma voor de Micro:bit met behulp van de event-handler: wanneer knop A wordt ingedrukt. We hebben voor het gemak de controle op de toestand achterwege gelaten, want er is maar één toestand.

 

 

Dit lijkt prima te werken. Wat gebeurt er als we hiervoor niet de event-handler gebruiken, bijvoorbeeld als volgt?

Probeer het maar eens uit, en houdt de knop wat langer ingedrukt. Daar gaat iets mis...

Manier 2

Het kan ook als volgt:

Merk op dat we de gebeurtenissen bij de toestandsovergangen anders formuleren dan in het eerdere voorbeeld. De toestanden zijn:

We kunnen dit omzetten naar een programma op de Micro:bit, zonder gebruik te maken van een event-handler.

 

Conclusie

Je hebt twee manieren gezien om een probleem op te lossen. Het lijkt erop dat de oplossing met een event-handler makkelijker is. Dan moet er echter wel een event-handler zijn.