Bordspelavond in de Clubhut. Sami gooit voor de derde keer zes. "Jij gooit vals!" roept Jonas. "Je laat hem rollen met een draaitje." Ruzie. Het spel ligt stil.
Kiko krabt aan zijn snuit. "Een dobbelsteen die niemand kan sturen. Ook Sami niet."
Jouw missie: bouw een dobbelsteen die eerlijk is. Gooien doe je door te schudden.

Zo ziet het eruit als het af is

Echte schermafbeelding uit de simulator van MakeCode.
Skills die je vrijspeelt
- Reageren op schudden
- Een willekeurig getal laten kiezen
- Een variabele: een doosje dat iets onthoudt
- Een piepje, een pauze en een leeg scherm
Je uitrusting
- MakeCode, nieuw project 'dobbelsteen'
- Je micro:bit met batterijpakje (schudden met een kabel eraan is lastig)
- Een bordspel, om je dobbelsteen echt te gebruiken
Hoe voelt de micro:bit dat je schudt?
Achteraan zit een versnellingsmeter: een chipje met een piepklein gewichtje dat een beetje kan bewegen. Beweeg je de micro:bit, dan duwt het gewichtje tegen de zijkant. De chip meet hoe hard, in drie richtingen (x, y en z).
Is die kracht groot en wisselt ze snel, dan beslist de micro:bit: dit is schudden. En het toeval? Dat maakt hij met een rekensom die zo grillig is dat niemand de uitkomst kan voorspellen.

Stap voor stap
Bij schudden
Invoer

Toon de code (JavaScript)
input.onGesture(Gesture.Shake, function () {
basic.showNumber(6)
})

Laat het toeval kiezen
Rekenen

Toon de code (JavaScript)
input.onGesture(Gesture.Shake, function () {
basic.showNumber(randint(1, 6))
})

Onthoud de worp
Variabelen
Toon de code (JavaScript)
let worp = 0
input.onGesture(Gesture.Shake, function () {
worp = randint(1, 6)
basic.showNumber(worp)
})

Piep, pauze, leeg
Muziek
Toon de code (JavaScript)
let worp = 0
input.onGesture(Gesture.Shake, function () {
worp = randint(1, 6)
music.playTone(523, music.beat(BeatFraction.Eighth))
basic.showNumber(worp)
basic.pause(2000)
basic.clearScreen()
})
basic.showIcon(IconNames.Diamond)
Gooi!
Simulator
Toon de code (JavaScript)
let worp = 0
input.onGesture(Gesture.Shake, function () {
worp = randint(1, 6)
music.playTone(523, music.beat(BeatFraction.Eighth))
basic.showNumber(worp)
basic.pause(2000)
basic.clearScreen()
})
basic.showIcon(IconNames.Diamond)

Testen en op je micro:bit
Eerst in de simulator
Links in de editor staat de simulator: een micro:bit op je scherm. Telkens je iets verandert, start hij opnieuw. Klik op A en B, of op SHAKE om te schudden. Sensoren krijgen een schuifje of bolletje waarmee je zelf licht, warmte of richting kiest.
Dan op je echte micro:bit
Steek de micro:bit met de USB-kabel in de computer en klik op Downloaden. Heb je hem gekoppeld (basisboekje), dan gaat je programma er meteen op. Anders krijg je een bestand dat eindigt op .hex: sleep het naar de schijf MICROBIT. Het gele lampje achteraan knippert. Stopt het? Dan draait je code.

Kies je pad
Jonas wil bewijs dat de dobbelsteen eerlijk is. Hoe pak je het aan?
Snel klaar. Maar bij tien worpen kan je best drie keer een zes krijgen. Bewijst dat iets?
Duurt langer. Elk getal zou ongeveer tien keer moeten komen. Dat overtuigt Jonas wel.
Er is geen fout antwoord. Klik op een keuze en lees de gevolgen. Bespreek ze met je club.
Bonuslevels
Eindbaas-vragen
Niet opzoeken: denk, test, en schrijf je antwoord op.


