


Programmering for matematikkundervisning
Introduksjon av Use-Modify-Create som arbeidsmåte for programmering i matematikkundervisningen på ungdomstrinnet
Utforske matematiske egenskaper og sammenhenger ved å bruke programmering.
Python
https://replit.com/@SusanneStigberg/funksjonsmaskin
https://replit.com/@SusanneStigberg/Funksjonsplotter
https://replit.com/@SusanneStigberg/Funksjonsmaskin-med-plot
I denne oppgaven kan eleven skrive inn ulike x-verdier, og programmet plotter punktene til funksjonen. Denne oppgaven var ikke med i utprøvningen, men har blitt laget i etterkant.
Gå in på: https://replit.com/@SusanneStigberg/Funksjonsmaskin-med-plot
Use: La elevene gjøre seg kjent med programmet.
Modify: Gå inn og se på eksempelkoden.
Create: Utforske matplotlib og numpy bibliotek for å lage egne funksjonsmaskiner.
Numpy: https://numpy.org/doc/stable/reference/routines.math.html
Matplotlib: https://matplotlib.org/
Utforske hvordan algoritmer kan skapes, testes og forbedres ved hjelp av programmering
Bruke variabler, løkker, vilkår og funksjoner i programmering til å utforske geometriske figurer og mønstre
mBot och mBlock / Blokkprogrammering
Kom i gang med Mbot-programmering
Denne oppgaven kan passe som en oppstart ved bruk av en robot. Målet er at elevene skal bli kjent med utstyret, og deretter begynne å reflektere omkring hvordan programkoden henger sammen med geometriske figurer.
Laste ned programmet (mBlock). Gå in på linken https://www.mblock.cc/en-us/download/ og følg instruksjonene.
Velg om du vil at elevene skal bruke Bluetooth (anbefales da du kan kjøre programmet uten å laste opp programvaren til roboten) eller laste opp programvaren med USB. Se på filmen hvordan du gjør det.
La elevene gjøre seg kjent med koding gjennom å få roboten til å bevege seg framover, snu, bakover.
La elevene få roboten å gå etter geometriske firkanter (kvadrat, rektangel, parallellogram, trapes, og få elevene å reflektere over figurenes egenskaper (vinkler i hjørnene, parallelle linjestykker. Gjør på samme måte med trekanter (likesidet, likebeint, rettvinklet)).
Kan koden forbedres med å bruke løkker?
Oppsummering: velg å se på ulike koder. Hva er egenskapene hos de ulike geometriske figurene? Hva kan forbedres i koden, hvordan?
Utforske hvordan algoritmer kan skapes, testes og forbedres ved hjelp av programmering
Bruke variabler, løkker, vilkår og funksjoner i programmering til å utforske geometriske figurer og mønstre
Python
https://replit.com/@SusanneStigberg/GeometryTurtlePatterns
https://replit.com/@SusanneStigberg/GeometryInnerOuterCircleSquare
I denne oppgaven skal elevene gjøre seg kjent med Turtle-verktøyet og bruke dette for å tegne geometriske figurer. Informasjon om verktøyet finnes her: https://docs.python.org/3.3/library/turtle.html?highlight=turtle. Et forslag er at elevene først kun skal forklare hva som skjer, siden se på koden og tolke koden og etterpå forandre i koden. Målet kan tilpasses etter hvor mye elvene har jobbet med Python tidligere, men det overgripende målet er å lære om ulike egenskaper hos figurer og hvordan man kan tegne figurer i Python.
Gå in på https://replit.com/@SusanneStigberg/GeometryTurtlePatterns.
Les koden (Use):
Endre koden (Modify):
Ha en oppsummering og se på noe kodeavsnitt felles.
Ekstraoppgave (Create):
Prøv å lage figuren.
Skriv ut sidelengde, indre radius og ytre radius
Løsningsforslag finns her: https://replit.com/@SusanneStigberg/GeometryInnerOuterCircleSquare
Utvikle oppgaven videre
Simulere utfall i tilfeldige forsøk og beregne sannsynligheten for at noe skal inntreffe, ved å bruke programmering.
Python
https://replit.com/@SusanneStigberg/kast-med-2-terninger
https://replit.com/@SusanneStigberg/maprogterning
https://replit.com/@SusanneStigberg/maprogterningmodified
I dette programmet kan eleven velge hvor mange kast han/hun vil gjøre med to terninger. I det øvre diagrammet vises fordelingen for antall øyne som var på terningen. Dette kan brukes i diskusjon om hvor mange øyne som er mest sannsynlig å få. Hvorfor blir fordelingen (trolig) mer jevn jo flere kast man gjør? Det nedre diagrammet viser summen av de to terningene.
USE: La elevene bli kjent med programmet ( https://replit.com/@SusanneStigberg/kast-med-2-terninger eller https://replit.com/@SusanneStigberg/maprogterning). Hvor mange sider har terningene? Hvorfor ser fordelingen ulik ut om man ser på hver enkelt terning eller summen av to terninger. Hva blir forskjellen om eleven kaster 10 kast eller 1000 kast (store talls lov)? La elevene jobbe i grupper og utforske programmet og svare på disse spørsmålene.
MODIFY: La elevene se på koden og forsøke å forstå hva de ulike radene betyr. De kan prøve å endre. Det er ikke farlig om de gjør feil og programmet slutter å fungere. Det går alltid an å begynne på nytt. Forsøk å endre i koden slik at antall sider på terningene endres til seks sider. Hva skjer med fordelingen da? Hvorfor? Fortsett å utforske hva som skjer hvis antall sider er ni eller endre antall terninger til tre terninger? (https://replit.com/@SusanneStigberg/maprogterningmodified )
Oppsummering om hva dere har funnet ut.
(CREATE: Lage et lignende spill – slik som stein saks papir. Dette programmet må også ha sannsynlighet og tre ulike muligheter. Se eksempelkode: https://replit.com/@SusanneStigberg/SteinSaksPapir).
Målet for opplæringa er at eleven skal kunne simulere utfall i tilfeldige forsøk og beregne sannsynligheten for at noe skal inntreffe, ved å bruke programmering.
Regnearkprogram
Kast med en terning
Kast med to terninger
Vi tenker at bruk av regneark, her excel, også er en form for programmering der elevene lager formler. I eksemplet brukes kast med en terning og kast med to terninger.
Mange elever på 9. trinn kan allerede lage formler i et regneark der de bruker tilfelidigformelen, sum, antallhvisformel mm. Dersom elevene har gode ferdigheter i å lage regneark, kan de lage regnearket selv. Dersom de ikke har så mye erfaring med regnearket, kan lærer levere ut et ferdig regneark som elevene prøver i bruk (Use). De kan prøve seg fram og endre formelen slik at de bruker andre typer terninger (nikantet) eller flere terninger (Modify). Til slutt kan de bruke regnearket og lage et annet eksempel, e.g. Stein, Saks, Papir (Create).
Det kan være interessant å sammenlikne bruk av regneark med Scratch og Python, som er to andre måtene som viser simulering av utfall i tilfeldige forsøk. Elevene kan oppfordres til å finne fordeler og ulemper med ulike måtene å bruke programmering på.
Simulere utfall i tilfeldige forsøk og beregne sannsynligheten for at noe skal inntreffe, ved å bruke programmering.
Scratch / Blokkprogrammering
Scratch Studio med 4 eksempler https://scratch.mit.edu/studios/25998548/
Denne oppgaven kan koble sammen programmering og sannsynlighet ved å bruke Scratch. Tanken bak er at eleven kan begynne med en terning med tre sider (Use) for å siden endre antall sider til seks sider (Modify). Et av læringsmålene kan kobles til fordeling av antall øyne og se sammenheng med antall kast. Når antallet kast økes, blir fordelingen (trolig) mer jevn ifølge store talls lov.
Gå inn på:https://scratch.mit.edu/projects/345153246
Forslag til to ulike utvidelser av oppgaven (Create)