PXT: Stein, saks, papir

Skrevet av: Bjørn Hamre, Julie Christina Revdahl

Kurs: Microbit
Tema: Elektronikk, Blokkbasert, Spill
Fag: Matematikk, Programmering
Klassetrinn: 5.-7. klasse, 8.-10. klasse, Videregående skole
Til lærerveiledningLast ned PDF

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.

checkSjekkliste

  • let bildenummer = 0
    input.onGesture(Gesture.Shake, function () {
      bildenummer = Math.randomRange(0, 4)
      basic.showNumber(bildenummer)
    })
    

flagTest 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.

checkSjekkliste

  • input.onGesture(Gesture.Shake, function () {
      bildenummer = Math.randomRange(0, 2)
      basic.showNumber(bildenummer)
      if (bildenummer == 0) {
          basic.showLeds(`
              . . # . .
              . # # # .
              # # # # #
              . # # # .
              . . # . .
              `)
      }
    })
    

flagTest 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.

checkSjekkliste

  • 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)
    

flagTest 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.

checkSjekkliste

  • 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(`
              # # # # #
              # # # # #
              # # # # #
              # # # # #
              # # # # #
              `)
      }
    })
    

flagTest 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.

checkSjekkliste

  • input.onButtonPressed(Button.A, function () {
        basic.clearScreen()
    })
    

flagTest 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

Lisens: CC BY-SA 4.0

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!