PXT: Stein, saks, papir
Skrevet av: Bjørn Hamre, Julie Christina Revdahl
Introduksjon
Her skal du lære å programmere micro:biten slik at du kan spille stein, saks, papir med den eller mot den.
Steg 1: Velge et tilfeldig tall
I første del av oppgaven skal vi få micro:biten til å velge et tilfeldig tall når den ristes. For at du senere skal kunne bruke dette tallet, må tallet lagres i en variabel.
Sjekkliste
-
let bildenummer = 0 input.onGesture(Gesture.Shake, function () { bildenummer = Math.randomRange(0, 4) basic.showNumber(bildenummer) })
Test prosjektet
Det er to forskjellige måter du kan teste micro:bit-programmer på:
-
Siden din kode skal reagere når du rister på micro:biten kan du simulere dette ved å klikke på den hvite prikken til venstre for teksten
SHAKE
på micro:bit-simulatoren. Det tilfeldige tallet som ble valgt skal vises på skjermen til micro:bit-simulatoren. Prøv flere ganger og se at tallet forandrer seg. -
Det lastes nå ned en fil som heter
stein-saks-papir.hex
til datamaskinen din. Samtidig dukker det opp et vindu som sier at du må flytte denne filen til MICROBIT-disken. Dersom du trenger hjelp til dette så spør en av veilederne.
Steg 2: Vise tallet som ble tilfeldig valgt
Micro:biten skal vise om det er stein, saks eller papir som ble valgt.
Sjekkliste
-
input.onGesture(Gesture.Shake, function () { bildenummer = Math.randomRange(0, 2) basic.showNumber(bildenummer) if (bildenummer == 0) { basic.showLeds(` . . # . . . # # # . # # # # # . # # # . . . # . . `) } })
Test prosjektet
Nå skal du teste programmet ditt ved å trykke på den hvite SHAKE
-knappen.
Steg 3: Vise saks
Tegne saks når tallet 1 blir valgt.
Sjekkliste
-
input.onGesture(Gesture.Shake, function () { bildenummer = Math.randomRange(0, 2) basic.showNumber(bildenummer) if (bildenummer == 0) { basic.showLeds(` . . # . . . # # # . # # # # # . # # # . . . # . . `) } if (bildenummer == 1) { } })
-
basic.showIcon(IconNames.Scissors)
Test prosjektet
Før du går videre er det på tide å teste programmet igjen. Det skal vise bildet av stein hvis 0
blir valgt og saks hvis tallet er 1
. Når tallet 2
blir valgt vil det ikke vises noe bilde ennå.
Steg 4: Vise papir
Å Tegne papir når variabelen bildenummer
har verdien 2 blir veldig likt steg 1 du gjorde tidligere.
Sjekkliste
-
let bildenummer = 0 input.onGesture(Gesture.Shake, function () { bildenummer = Math.randomRange(0, 2) basic.showNumber(bildenummer) if (bildenummer == 0) { basic.showLeds(` . . # . . . # # # . # # # # # . # # # . . . # . . `) } if (bildenummer == 1) { basic.showIcon(IconNames.Scissors) } if (bildenummer == 2) { basic.showLeds(` # # # # # # # # # # # # # # # # # # # # # # # # # `) } })
Test prosjektet
Nå kan du teste programmet ditt. Det skal nå vise enten stein, saks eller papir avhengig av hvilket tall som blir valgt når du trykker på SHAKE
-knappen.
Steg 5: Tømme skjermen mellom hvert spill
Når micro:biten skal velge et tilfeldig tall, kan det samme tallet blir valgt to ganger på rad. Det kan derfor være vanskelig å vite om det samme tallet ble valgt igjen, eller om du ikke ristet hardt nok. For å gjøre det enkelt å se, vil vi tømme skjermen mellom hvert spill.
Sjekkliste
-
input.onButtonPressed(Button.A, function () { basic.clearScreen() })
Test prosjektet
Nå kan du teste programmet ditt. Det skal nå vise enten stein, saks eller papir avhengig av hvilket tall som blir valgt når du trykker på SHAKE
-knappen.
Utfordring
Forbedre denne siden
Funnet en feil? Kunne noe vært bedre?
Hvis ja, vennligst gi oss tilbakemelding ved å lage en sak på Github eller fiks feilen selv om du kan. Vi er takknemlige for enhver tilbakemelding!