Hopp til innhold

Oppgaver og aktiviteter

Introduksjon til kombinatorikk

Her skal du jobbe litt mer med opptellinger.

4.2.1

Ta utgangspunkt i øvelsen vi gjorde på teorisida der vi testet hvor mange par vi kunne lage med tellebrikker av fem ulike farger.

a) Hvor mange grupper med tre brikker kan du lage dersom du kan bruke samme farge flere ganger og rekkefølgen på brikkene er viktig? (Det vil si at du for eksempel må telle med både gul-blå-gul og gul-gul-blå.)

Løsning

Vi har 5 muligheter for den første brikken, 5 muligheter for den andre og 5 muligheter for den tredje. Altså har vi  5·5·5=53=125  mulige grupper på tre brikker.

b) Hvor mange grupper med fire brikker kan du lage dersom du kan bruke samme farge flere ganger og rekkefølgen på brikkene er viktig?

Løsning

Vi har 5 muligheter for den første brikken, 5 muligheter for den andre, 5 muligheter for den tredje og 5 muligheter for den fjerde. Altså har vi  5·5·5·5=54=625  mulige grupper på fire brikker.

c) Hvor mange grupper med fem brikker kan du lage dersom du kan bruke samme farge flere ganger og rekkefølgen på brikkene er viktig?

Løsning

Etter samme mønster som over får vi nå  5·5·5·5·5=55=3125.

d) Lag en formel for hvor mange grupper med n brikker av fem ulike farger du kan lage dersom du kan bruke samme farge flere ganger og rekkefølgen på brikkene er viktig.

Løsning

Forutsatt at vi har nok brikker, har vi fem muligheter på alle plasser, og vi får etter mønster av oppgave c) 5n ulike grupper.

4.2.2

Du har fortsatt tellebrikker med fem ulike farger.

a) Hvor mange grupper med tre brikker kan du lage dersom du ikke kan bruke samme farge flere ganger og rekkefølgen brikkene ligger i, er viktig?

Løsning

Her har vi 5 valg for den første plassen. For hver av disse valgene har vi 4 valg, siden vi ikke kan ha den samme fargen som på førsteplass. På den tredje plassen har vi 3 valg, siden vi allerede har brukt opp to farger. Det gir  5·4·3=60  muligheter.

b) Hvor mange grupper med fire brikker kan du lage dersom du ikke kan bruke samme farge flere ganger og rekkefølgen brikkene ligger i, er viktig?

Løsning

Vi fortsetter på de gruppene vi lagde i b). For hver av disse har vi to valg, siden vi har brukt tre farger allerede. Da får vi  5·4·3·2=120   muligheter.

c) Hvor mange grupper med fem brikker kan du lage dersom du ikke kan bruke samme farge flere ganger og rekkefølgen brikkene ligger i, er viktig?

Løsning

For hver av de 120 mulighetene vi fant i c), har vi kun ett valg – det betyr at vi har 120 muligheter her også.

4.2.3

Vi fortsetter med tellebrikker i fem farger.

Hvor mange grupper med tre brikker kan du lage hvis du ikke kan bruke samme farge flere ganger og rekkefølgen brikkene ligger i, ikke har noen betydning? (Det vil si at du for eksempel må se på gul-rød-blå, gul-blå-rød, rød-gul-blå, rød-blå-gul, blå-gul-rød og blå-rød-gul som samme gruppe.) Bruk brikker, og prøv deg fram.

Løsning

Trodde du at dette ville være veldig mange brikker og ble litt motløs?

Ikke fortvil, her ser du hvilke kombinasjoner du kan ha:

Det er ti grupper med tre tellebrikker i hver. Ingen av gruppene har noen like kombinasjoner. Gruppene har fargene blå, gul, rød, grønn og lilla. Foto.
Åpne bilde i et nytt vindu

Det var altså bare 10 forskjellige, akkurat like mange som når vi lagde par.

Senere skal vi lære hvordan vi kan regne ut dette og se på hvorfor vi får 10 muligheter med både par og grupper på tre.

4.2.4

Kan du lage et program som hjelper deg å finne alle løsningene vi fant på teorisida? Senere skal vi se på at Python har innebygde kommandoer for å gjøre dette, men foreløpig er oppgaven din å la Python lete frem parene slik du gjorde med tellebrikkene. Husk at det lønner seg å lage en oppskrift (en algoritme) før du gir deg i kast med selve programmet.

Løsning nummer 1 – algoritme

1. Vi må lage ei liste over alle brikkene vi har.
2. Vi må ha ei tom liste for å legge inn parene.
3. Vi må gå gjennom lista og ta hver brikke og pare den med hver brikke i lista.
4. Vi må legge alle disse parene inn i lista.
5. Vi skriver ut lista over disse parene.
6. Vi finner lengden på lista for å finne antall par.

Løsning nummer 1 – program

Python

1Brikker = ["gul", "grønn", "blå", "rød", "lilla"]
2    #lager liste over hvilke brikker vi har
3
4AllePar = [] #lager ei tom liste for alle parene
5
6for i in range(len(Brikker)):
7    for j in range(len(Brikker)):   #går gjennom og finner alle parene
8        Par = [Brikker[i],Brikker[j]] #lager ei liste med det aktuelle paret
9        AllePar.append(Par) #legger parene inn i lista over alle mulighetene
10
11print(AllePar)
12print(f"Antall par er {len(AllePar)}.")
Løsning nummer 2 – algoritme

Her kan vi velge å bruke algoritmen fra løsning nummer 1, og så tar vi ut de parene som har like brikker. Vi endrer litt på punkt 4 for å løse dette:

1. Vi må lage ei liste over alle brikkene vi har.
2. Vi må ha ei tom liste for å legge inn parene.
3. Vi må gå gjennom lista og ta hver brikke og pare den med hver brikke i lista.
4. Vi må legge parene der brikkene har ulik farge inn i lista.
5. Vi skriver ut lista over disse parene.
6. Vi finner lengden på lista for å finne antall par.

Løsning nummer 2 – program

Python

1Brikker = ["gul", "grønn", "blå", "rød", "lilla"]
2    #lager liste over hvilke brikker vi har
3
4AllePar = [] #lager ei tom liste for alle parene
5
6for i in range(len(Brikker)):
7    for j in range(len(Brikker)):   #går gjennom og finner alle parene
8        Par = [Brikker[i],Brikker[j]] #lager ei liste med det aktuelle paret
9        if Brikker[i] != Brikker[j]:
10            AllePar.append(Par)
11
12print(AllePar)
13print(f"Antall par er {len(AllePar)}.")
Løsning nummer 3 – algoritme

Også her må vi endre litt på algoritmen. Her endrer vi punkt 3 for å bare lage par med ulike brikker. (Vi kunne også ha valgt å fjerne de parene som har like fargekombinasjoner, men et slikt program vil bruke mye lenger tid.)

1. Vi må lage ei liste over alle brikkene vi har.
2. Vi må ha ei tom liste for å legge inn parene.
3. Vi må gå gjennom lista og ta hver brikke og pare den med hver brikke som kommer etterpå i lista.
4. Vi må legge disse parene inn i lista.
5. Vi skriver ut lista over disse parene.
6. Vi finner lengden på lista for å finne antall par.

Løsning nummer 3 – program

Python

1Brikker = ["gul", "grønn", "blå", "rød", "lilla"]
2    #lager liste over hvilke brikker vi har
3
4AllePar = [] #lager ei tom liste for alle parene
5
6for i in range(len(Brikker)):
7    for j in range(len(Brikker)):   #går gjennom og finner alle parene
8        if j > i: #passer på at vi ikke bruker noen kombinasjoner om igjen
9            Par = [Brikker[i],Brikker[j]] #lager ei liste med det aktuelle paret
10            AllePar.append(Par)
11
12print(AllePar)
13print(f"Antall par er {len(AllePar)}.")
Løsning nummer 4 – algoritme

Her bruker vi algoritmen fra løsning nummer 3, men vi legger til de like parene:

1. Vi må lage ei liste over alle brikkene vi har.
2. Vi må ha ei tom liste for å legge inn parene.
3. Vi må gå gjennom lista og ta hver brikke og pare den med hver brikke som kommer etterpå i lista.
4. Vi må legge disse parene inn i lista.
5. Vi må legge inn parene med like brikker i lista.
6. Vi skriver ut lista over alle parene.
7. Vi finner lengden på lista for å finne antall par.

Løsning nummer 4 – program

Python

1Brikker = ["gul", "grønn", "blå", "rød", "lilla"]
2    #lager liste over hvilke brikker vi har
3
4AllePar = [] #lager ei tom liste for alle parene
5
6for i in range(len(Brikker)):
7    for j in range(len(Brikker)):   #går gjennom og finner alle parene
8        if j > i: #passer på at vi ikke bruker noen kombinasjoner om igjen
9            Par = [Brikker[i],Brikker[j]] #lager ei liste med det aktuelle paret
10            AllePar.append(Par)
11for i in range(len(Brikker)):
12    AllePar.append([Brikker[i],Brikker[i]])
13
14print(AllePar)
15print(f"Antall par er {len(AllePar)}.")

4.2.5

Nå kan du prøve å løse oppgave 4.2.1–4.2.3 med programmering.

Har du lagd programmer som er litt annerledes enn løsningene? Husk da på at man kan løse oppgaver på mange ulike måter, både i programmering og ellers i matematikken. Kanskje er ditt program enda mer effektivt enn vårt?

CC BY-SASkrevet av Tove Annette Holter.
Sist faglig oppdatert 14.01.2021

Læringsressurser

Kombinatorikk