Hopp til innhald

Oppgåver og aktivitetar

Statistikk – blanda oppgåver

Rekn ulike typar oppgåver med statistikk her.

Du kan bruke GeoGebra til å løyse desse oppgåvene. Om du treng hjelp med GeoGebra, kan du sjå lenkja nedst på sida. Løysingane finn du under alle oppgåvene.

ST-101

Marie har sommarjobb der ho tek med turistar på turar med hest og kjerre. Det er plass til 6 passasjerar, men det er ikkje alltid kjerra er full når ho skal køyre. Ei veke hadde ho dei følgjande passasjertala på turane:

3, 5, 5, 6, 6, 4, 6, 5, 6, 3, 6, 4, 5, 6, 6, 2, 4, 3, 5, 6, 4, 6, 5, 6

a) Finn gjennomsnitt, median og typetal i dette talmaterialet.

b) Kva for eit av sentralmåla synest du fortel mest om kor mange passasjerar Marie hadde på turane sine?

c) Finn variasjonsbreidde, kvartilbreidde og standardavvik.

d) Teikn eit boksplott over dataa. Kommenter utsjånaden på boksplottet, og forklar kvifor det blir slik.

ST-102

Zelda står på kjøpesenteret ein laurdag ettermiddag og tel kor mange kundar som går inn i ein av klesbutikkane kvart minutt. På det travlaste var det 8 kundar som gjekk inn i løpet av eitt minutt, men det var òg nokre minutt der det ikkje kom nokon. Zelda står i éin time og samlar resultata i tabellen nedanfor.

Talet på kundar per minutt

Frekvens

0

4

1

6

2

10

3

8

4

9

5

7

6

6

7

6

8

4

a) Kva kallar vi ein slik tabell?

b) Finn gjennomsnitt, median og typetal i dette talmaterialet.

c) Finn variasjonsbreidde, kvartilbreidde og standardavvik. Teikn boksplott over dataa.

d) Korleis kan Zelda rapportere inn resultata frå undersøkinga til butikkeigaren på ein god måte?

Tips til oppgåve d)

Tala Zelda har kome fram til, gjeld i utgangspunktet for ein enkelt time på laurdagen. Ho bør opplyse om mellom kva klokkeslett målingane vart gjorde. I tillegg til å presentere dei ulike statistiske storleikane kan ho rekne ut kor mange kundar som var innom i løpet av timen, og ho kan til dømes framstille frekvenstabellen i eit søylediagram.

I presentasjonen av dei statistiske storleikane bør ho seie at ho har funne det vanlege standardavviket. Dersom tala skal brukast til å seie noko generelt om besøket på laurdagar, bør eigentleg utvalsstandardavviket brukast i staden for det vanlege standardavviket.

ST-103

Sondre hadde sommarjobb som turguide opp til Storfossen. Tabellen nedanfor viser kor mange turistar som var med kvar veke denne sommaren.

Veke nr.

25

26

27

28

29

30

31

32

33

Talet på turistar

14

29

37

41

40

32

49

36

21

a) Finn gjennomsnittet og medianen i dette talmaterialet.

b) Kvifor vart det ikkje spurt om typetalet i oppgåve a)?

c) Finn variasjonsbreidda, kvartilbreidda og standardavviket. Teikn boksplott.

ST-104

Tabellen viser talet på feriereiser med fly nordmenn gjorde i åra 2014–2020. Tala er henta frå statistikkbanken til Statistisk sentralbyrå.

År

2014

2015

2016

2017

2018

2019

2020

Talet på feriereiser
med fly
(millionar)

6,84

6,49

6,27

6,71

6,17

6,60

2,02

a) Kva er det gjennomsnittlege talet på feriereiser med fly for desse åra?

b) Kva er medianen?

c) Finn variasjonsbreidda, kvartilbreidda og standardavviket. Teikn boksplott. Kommenter utsjånaden til boksplottet.

d) Lag eit linjediagram som viser korleis det gjennomsnittlege talet på feriereiser med fly per person har utvikla seg. Kommenter utviklinga.

e) Gjer oppgåva på nytt ved å inkludere nyare tal på talet på flyreiser. Sjå tabellen 06921: Reiseundersøkelsen (ssb.no). Korleis utviklar talet på feriereiser med fly seg etter at det sokk mykje i 2020?

Tips til oppgåve e)
  • Vel statistikkvariabelen "Reiser".

  • Vel kvartala 2021K1 og nyare.

  • Under "Transportmåte" vel du "Fly".

  • Under "Reisetype" vel du "Korte feriereiser i alt" og "Lange feriereiser i alt".

  • Trykk på "Vis tabell".

  • Vel "Lagre data som ..." og "Excel". Opne reknearket i eit vanleg reknearkprogram, og legg saman tala så du får det samla talet på feriereiser med fly for kvart år. Kopier tala over i reknearkdelen til GeoGebra.

ST-105

Tabellen nedanfor viser omsetninga per innbyggjar i detaljhandelen i kroner for åra 2010 til 2020. Tala er henta frå statistikkbanken til Statistisk sentralbyrå.

År

2010

2011

2012

2013

2014

2015

2016

2017

2018

2019

2020

Kr/innbyggjar

71 919

73 229

74 916

75 802

78 244

80 180

82 379

83 667

84 896

86 295

97 052

a) Kva er den gjennomsnittlege omsetninga per innbyggjar i detaljhandelen for desse åra?

b) Kva er medianen?

c) Finn variasjonsbreidda, kvartilbreidda og standardavviket.

d) Korleis har omsetninga per innbyggjar i detaljhandelen i kroner for åra 2010 til 2020 utvikla seg? Kommenter resultata.

e) Bruk regresjon og lag to matematiske modellar for korleis detaljhandelen har utvikla seg i dette tidsrommet. La x vere talet på år etter 2010.

f) Kva vil omsetninga per innbyggjar i detaljhandelen i kroner vere i 2030 med desse modellane? Kva modell trur du er mest riktig?

Tips til oppgåva

For å svare betre på kva modell som er mest riktig, kan du finne nyare tal for detaljhandelen dersom det er mogleg. Sjå "Kjelder" nedst på sida.

ST-106

Kine dreiv kiosk på heimplassen to veker sommaren 2020. Ho registrerte dagsomsetninga i ein tabell.

Måndag

Tysdag

Onsdag

Torsdag

Fredag

Laurdag

Søndag

Veke 28

740

800

910

635

1090

350

810

Veke 29

630

480

290

605

1230

410

900

Tala er i kroner.

Beskriv omsetninga ved hjelp av sentralmål og spreiingsmål.

(Dette er oppgåve 13 frå dømeoppgåvene frå eksamen i 1P-Y, publisert av Utdanningsdirektoratet desember 2020.)

ST-107

Tabellen viser talet på overnattingar i Trøndelag i samband med feriereiser i åra 2019 og 2020. Tala er henta frå statistikkbanken til Statistisk sentralbyrå, sjå kjelder nedst på sida.

Jan.

Feb.

Mars

April

Mai

Juni

Juli

Aug.

Sept.

Okt.

Nov.

Des.

2019

33 887

47 158

52 998

52 944

55 554

98 655

155 400

113 976

66 960

61 665

60 367

48 132

2020

46 238

62 002

23 145

3 351

13 470

72 550

218 211

117 474

66 914

71 125

32 044

24 373

a) Bruk sentralmål og spreiingsmål til å samanlikne tala for dei to åra.

b) Lag eit diagram der du samanliknar tala for dei to åra. Prøv å bruke diagrammet til å forklare at spreiinga er større på tala i 2020 enn i 2019. Kva kan denne spreiinga kome av?

c) Finn tilsvarande tal for 2021 og kommenter utviklinga.

ST-111

Vi skal lage eit program som reknar ut gjennomsnittet i eit datamateriale der vi har ei rekkje med rådata (til dømes alle karakterane på ei prøve i ein klasse). Brukaren av programmet skal taste inn tala.

a) Lag ein algoritme for eit slik program.

Tips til oppgåva

Tenk gjennom korleis du vil at brukaren av programmet skal taste inn tala. Det enklaste er kanskje at brukaren trykkjer entertasten mellom kvart tal. Alternativt må det leggjast inn til dømes eit komma mellom kvart tal dersom alle tala skal skrivast inn på éin gong.

b) Skriv programkoden til algoritmen og test han.

c) Skriv algoritme og lag eit tilsvarande program der dataa er ordna i ein frekvenstabell slik at brukaren først tastar inn dei moglege måleverdiane og deretter frekvensane. Programmet skal rekne ut gjennomsnittet.

d) Utvid programmet slik at det kan finne nokre av dei andre statistiske storleikane.

Løysingar

ST-101 a)

Vi kan kopiere tala direkte inn i reknearkdelen i GeoGebra. Då hamnar tala til dømes cellene A1 til og med X1. Vi lagar lista med kommandoen

data = A1:X1

Så bruker vi kommandoane "gsnitt", "Median" og "Typetal", alle med argumentet "data", og vi gir resultatet logiske namn.

gjennomsnittet = gsnitt(data)

medianen = Median(data)

typetalet = Typetal(data)

Fasit

Gjennomsnittet er 4,88.

Medianen er 5.

Typetalet er 6.

ST-101 b)

Her spørst det kva ein vil leggje vekt på. Gjennomsnittet og medianen er ganske nær kvarandre. Vi kan seie at i gjennomsnitt hadde Marie 5 passasjerar. Samtidig er det absolutt flest turar med full kjerre, altså 6 passasjerar. Så det går òg an å hevde at "den typiske" turen er med 6 passasjerar.

ST-101 c)

Her bruker vi kommandoane "Maks", "Min", "Q3", "Q1" og "stavvp". Vi bruker "stavvp" (vanleg standardavvik) sidan vi har tilgang på alle tala i talmaterialet.

variasjonsbreidda = Maks(data) - Min(data)

kvartilbreidda = Q3(data) - Q1(data)

standardavviket = stavvp(data)

Fasit

Variasjonsbreidda er 4.

Kvartilbreidda er 2.

Standardavviket er 1,2.

ST-101 d)

Vi teiknar boksplottet med kommandoen

Boksplott(2,1,data,false)

Boksplott der det lengst til venstre er ein loddrett strek for talet på passasjerar lik 2. Det er eit rektangel som går frå talet på passasjerar lik 4 til talet på passasjerar lik 6. Gjennom rektangelet går det ein loddrett strek for talet på passasjerar lik 5. Det er ingen loddrett strek til høgre for rektangelet. Illustrasjon.

Her stikk det ikkje ut noko på høgre side av boksen som markerer kvartilbreidda. Det er fordi øvre kvartil er lik den største verdien (6). Årsaka til det er at Marie har hatt mange nok turar med full kjerre, altså 6 passasjerar.

Filer

ST-102 a)

Dette er ein frekvenstabell.

ST-102 b)

Her er det kanskje enklast å bruke reknearkdelen i GeoGebra og skrive talet på kundar per minutt i cellene A2 til A10 og frekvensane i cellene B2 til B10. Skriv overskrifter i cellene A1 og B1.

Så lagar vi lister av tala.

tal = A2:A10

frekvensar = B2:B10

Deretter bruker vi kommandoane "gsnitt" og "Median", denne gongen med to lister som argument ("tal" og "frekvensar"). Typetalet er det talet som har den største frekvensen, og dette les vi rett av tabellen.

gjennomsnittet = gsnitt(tal,frekvensar)

medianen = Median(tal,frekvensar)

Fasit

Gjennomsnittet er 3,85.

Medianen er 4.

Typetalet er 2.

ST-102 c)

Her bruker vi kommandoane "Maks", "Min", "Q3", "Q1" og "stavvp" for vanleg standardavvik.

variasjonsbreidda = Maks(tal) - Min(tal)

kvartilbreidda = Q3(tal, frekvensar) - Q1(tal, frekvensar)

standardavviket = stavvp(tal, frekvensar)

Fasit

Variasjonsbreidda er 8.

Kvartilbreidda er 4.

Standardavviket er 2,29.

Kommandoen for boksplottet er

Boksplott(2,1,tal,frekvensar,false)

Filer

ST-103 a)

Gjennomsnittet er 33,22.

Medianen er 36.

Sjå elles den nedlastbare GeoGebra-fila.

ST-103 b)

I dette talmaterialet er det ingen tal som finst fleire enn éin gong. Derfor blir det meiningslaust å snakke om typetalet her.

Vi kan òg seie at i eit talmateriale der talet på målingar er mykje mindre enn talet på moglege måleverdiar, vil det stort sett berre vere éin førekomst av tala. Dersom det tilfeldigvis skulle vere to førekomstar av eit tal, vil ikkje det gi noko nyttig informasjon om talmaterialet om vi gir dette som typetal.

ST-103 c)

Variasjonsbreidda er 35.

Kvartilbreidda er 15,5.

Standardavviket er 10,09.

Filer

ST-104 a)

Vi skriv tala inn i reknearkdelen til GeoGebra og lagar lista "data" av tala. Så bruker vi kommandoen gsnitt(data). Det gjennomsnittlege talet på feriereiser med fly er 5,87 millionar.

ST-104 b)

Med kommandoen Median(data) får vi at medianen for talet på feriereiser med fly er 6,49 millionar.

ST-104 c)

Vi bruker kommandoane

Maks(data)-Min(data)
Q3(data)-Q1(data)
stavvp(data)

og får dette resultatet:

Variasjonsbreidda for talet på flyreiser er 4,82.
Kvartilbreidda for talet på flyreiser er 0,54.
Standardavviket for talet på flyreiser er 1,59.

Kommandoen

Boksplott(2,1,data,false)

gir boksplottet nedanfor.

Boksplott der det lengst til venstre er ein loddrett strek for talet på flyreiser i millionar lik 2. Det er eit rektangel som går frå talet på flyreiser i millionar lik cirka 6,2  til talet på flyreiser i millionar lik cirka 6,7. Gjennom rektangelet går det ein loddrett strek for talet på flyreiser i millionar lik cirka 6,5. Heilt til høgre er det ein loddrett strek for talet på flyreiser i millionar lik cirka 6,8. Illustrasjon.

Boksplottet blir veldig "skeivt" sidan alle tala bortsett frå eitt er samla mellom 6 og 7.

ST-104 d)

Linjeediagram kan vi lage ved å kopiere tala inn i eit vanleg reknearkprogram som Excel eller Google Regneark.

Linjediagram over tala i tabellen i oppgåva. Illustrasjon.
Opne bilete i eit nytt vindauge

Filer

Filer

ST-105 a)

Den gjennomsnittlege omsetninga per innbyggjar i detaljhandelen er 80 780 kroner.

ST-105 b)

Medianen for omsetninga per innbyggjar i detaljhandelen er 80 180 kroner.

ST-105 c)

Variasjonsbreidda er 25 133 kroner.

Kvartilbreidda er 9 980 kroner.

Standardavviket er 6 905 kroner.

ST-105 d)

Vi ser at omsetninga per innbyggjar har auka jamt og trutt med eitt til to tusen frå år til år bortsett frå 2019 til 2020. Då auka ho plutseleg med meir enn 10 000. Årsaka kan vere at folk reiste mindre og handla meir det første året av koronapandemien.

ST-105 e)

Vi lagar ein ny kolonne for talet på år etter 2010 i reknearkdelen i GeoGebra og bruker regresjonsverktøyet på denne kolonnen og kolonnen med tala for detaljhandelen.

Vi vel lineær og eksponentiell modell i regresjonsverktøyet. Ein lineær modell gir funksjonen

gx=2070,31x+70428

Ein eksponentiell modell gir funksjonen

hx=70943·1,03x

ST-105 f)

Året 2030 betyr at  x=20. Vi reknar ut g20 og h20 i algebrafeltet eller med CAS og får

g20 = 111 835h20 = 117 592

Omsetninga vil vere 111 835 kroner med ein lineær modell og 117 592 med ein kroner med ein eksponentiell modell.

Grafen til funksjonen g av x er lik 2070,31 x pluss 70428 og grafen til funksjonen h av x er lik 70943,14 multiplisert med 1,03 opphøgd i x er teikna for x-verdiar mellom 0 og 24. Punkta som dei to funksjonane er baserte på, er også teikna inn. Punktet på g med koordinatane 20 og 111835 og punktet på h med koordinatane 20 og 117592 er teikna inn. Illustrasjon.

Dersom vi ser bort frå talet for 2020, har utviklinga vore nokså jamn. Begge modellane spår at det skal auke meir enn dette. Slik sett vil den lineære modellen kanskje passe best i tida framover. Talet for 2020 er kanskje påverka av at det var koronapandemi, og at folk brukte meir pengar på å handle enn å reise. At det skal halde fram med å auke like mykje i åra etter 2020, verkar litt usannsynleg.

Filer

ST-106

I denne oppgåva er det ikkje noko eksakt svar på kva som må vere med for å få full utteljing på ei prøve eller ein eksamen. Løysinga nedanfor er eit forslag til kva som kan gjerast.

Vi skriv inn tala i reknearkdelen i GeoGebra i cellene A1 til A14 og lagar lister både av kvar veke og av begge vekene sett under eitt. Så bruker vi diverse statistiske kommandoar for å finne dei ulike storleikane. Nedanfor har vi avskrift av algebrafeltet i GeoGebra av dataa for dei to vekene sett under eitt.

data = A1:A14
→ {740, 800, 910, 635, 1090, 350, 810, 630, 480, 290, 605, 1230, 410, 900}

talet på = Lengde(data)
→ 14

gjennomsnitt = gsnitt(data)
→ 705.71

kvartilbreidde = Q3(data) – Q1(data)
→ 420

median = Median(data)
→ 687.5

standardavvik = stavvp(data)
→ 264.79

sum = Sum(data)
→ 9880

variasjonsbreidde = Maks(data) – Min(data)
→ 940

Totalt sett for dei to vekene vart salet på 9 880 kroner med eit standardavvik på 265 kroner. Gjennomsnittleg sal per dag var 706 kroner. Salstala for ein dag har variert med 940 kroner.

Avskrift av algebrafeltet for tala for veke 28

data = A1:A7
→ {740, 800, 910, 635, 1090, 350, 810}

talet på = Lengde(data)
→ 7

gjennomsnitt = gsnitt(data)
→ 767.14

kvartilbreidde = Q3(data) – Q1(data)
→ 275

median = Median(data)
→ 800

standardavvik = stavvp(data)
→ 213.67

sum = Sum(data)
→ 5335

variasjonsbreidde = Maks(data) – Min(data)
→ 740

Avskrift av algebrafeltet for tala for veke 29

data = A8:A14
→ {630, 480, 290, 605, 1230, 410, 900}

talet på = Lengde(data)
→ 7

gjennomsnitt = gsnitt(data)
→ 649.29

kvartilbreidde = Q3(data) – Q1(data)
→ 490

median = Median(data)
→ 605

standardavvik = stavvp(data)
→ 296.99

sum = Sum(data)
→ 4545

variasjonsbreidde = Maks(data) – Min(data)
→ 940

Vi ser at salet var best i veke 28 med eit totalt sal på 5 335 kroner. Sjå talet "sum". Samtidig er spreiinga i salstala størst i veke 29. Både kvartilbreidde, variasjonsbreidde og standardavvik er størst i veke 29. Av tala for variasjonsbreidde ser vi at salet har variert med 940 kroner i veke 29 og 740 kroner i veke 28. Vi ser òg at medianen for veke 29 ligg nesten 200 under medianen for veke 28, mens gjennomsnittet berre ligg cirka 110 under. Det tyder på at i veke 29 var det fleire dagar med lågt sal og nokre få dagar med høgt sal. Det passar godt med at salsrekorden for dei to vekene var fredagen i veke 29, mens dagen med lågast sal var onsdagen i den same veka.

Medianen for veke 28 ligg over gjennomsnittsverdien mens det er omvendt for veke 29. Det betyr at i veke 28 er det nokre få dagar med veldig lågt sal som trekkjer gjennomsnittet ned, mens det er motsett for veke 29.

Oppgåva kan òg løysast ved å bruke verktøyet for analyse av ein variabel i GeoGebra.

ST-107 a)

Vi legg tala inn i GeoGebra og finn dei følgjande statistiske tala:

Gjennomsnitt

Median

Standardavvik

Variasjonsbreidde

2019

70 641

57 961

33 301

121 513

2020

62 575

54 120

55 945

214 860

Vi ser av gjennomsnittet at det var fleire overnattingar i samband med feriereiser i 2019 enn i 2020. Samtidig er standardavviket og variasjonsbreidda større for 2020 enn for 2019. Det betyr at variasjonen mellom dei 12 månadene i 2020 var stor.

Filer

ST-107 b)

Vi vel å lage eit søylediagram over tala. Då er det kanskje enklast å bruke eit vanleg reknearkprogram. Vi har brukt reknearket vi kan laste ned frå Statistisk sentralbyrå på denne statistikken som utgangspunkt.

Søylediagram over tala i tabellen i oppgåva. Illustrasjon.
Opne bilete i eit nytt vindauge

Vi ser at i april 2020 var det svært få overnattingar. Tre månader seinare, i juli, har vi det største talet overnattingar i ein månad for dei to åra. Det tyder på at spreiinga var større i 2020 enn i 2019.

Årsaka til det er nok at i store delar av mars og april 2020 var Noreg stengd ned på grunn av koronapandemien. Same sommar var det ikkje mogleg å gjere feriereiser til utlandet, noko som førte til at folk reiste på ferie heime. Dette kan forklare det høge talet overnattingar i Trøndelag i juli 2020.

Filer

ST-111 a)

Forslag til algoritme som tek utgangspunkt i at kvart tal blir mata inn separat:

  • Skriv til skjermen: "Dette programmet reknar ut gjennomsnittet av dei tala som blir tasta inn."

  • Skriv til skjermen: "Skriv inn eitt og eitt tal og trykk enter for kvart tal. Skriv inn "x" når du er ferdig."

  • Så lenge vi ikkje er ferdige med å skrive inn tal:

    • Skriv til skjermen: "Nytt tal: "

    • Ta imot input frå brukaren.

    • Dersom det som kjem inn er eit tal, legg til talet i ein sum og auk ein teljar for talet på tal med 1.

    • Viss ikkje (og brukaren har skrive ein "x"), er vi ferdige.

  • Del summen på talet på tal.

  • Skriv til skjermen "Gjennomsnittet av tala er <resultatet av utrekninga i det førre punktet>."

Kommentar: Dersom du vel å skrive inn alle tala samtidig med til dømes komma mellom kvart tal, må du lage ein rutine for å plukke ut tala frå den lange tekststrengen vi då får. Dette gjer vi i den alternative løysinga nedanfor.

Alternativ løysing

Løysinga tek utgangspunkt i at alle tala blir skrivne inn på éin gong med komma (,) mellom kvart tal (hugs at desimaltal må skrivast med punktum i Python).

  • Skriv til skjermen: "Dette programmet reknar ut gjennomsnittet av dei tala som blir tasta inn."

  • Skriv til skjermen: "Skriv inn tala med eitt komma mellom kvart tal."

  • Ta imot lista med tal frå brukaren og lagre i ein tekstvariabel.

  • Gå gjennom tekstvariabelen og legg det som står mellom kvart komma (altså kvart tal) til ei liste.

  • Legg saman tala i lista og del på talet på tal.

  • Skriv til skjermen: "Gjennomsnittet av tala er <resultatet av utrekninga i det førre punktet>."

ST-111 b)

Kode som tek utgangspunkt i at tala blir skrivne inn eitt og eitt:

python

1print("Dette programmet reknar ut gjennomsnittet "
2    "av dei tala som blir tasta inn.")
3print("Skriv inn eitt og eitt tal og trykk enter for kvart tal."
4    " Skriv inn 'x' når du er ferdig.")
5summen = 0           # skal bli summen av alle tala
6antal = 0            # skal innehalde talet på tal
7ferdig = False       # skal brukast for å stoppe innlesinga av tal
8           
9while ferdig == False:         # så lenge ferdig har verdien False
10    tal = input("Nytt tal: ")
11
12    if tal != "x":         # viss talet ikkje er "x", dvs. eit "ekte" tal
13        summen = summen + float(tal)  # legg talet til summen
14        antal = antal + 1             # aukar talet på tal med 1
15    else:         # viss talet er ein "x"    
16        ferdig = True         # med dette vil while-lykkja stoppe
17
18gjsnitt = summen/antal      # reknar ut gjennomsnittet
19print(f"Gjennomsnittet av tala er {gjsnitt:.2f}.")

Alternativ løysing

Koden nedanfor tek utgangspunkt i at alle tala blir skrivne inn på éin gong med komma mellom kvart tal. Til å skilje tala og leggje dei i ei liste, bruker vi funksjonen "split", sjå nedst på sida.

python

1print("Dette programmet reknar ut gjennomsnittet "
2    "av dei tala som blir tasta inn.")
3print("Skriv inn alle tala med komma ',' imellom. Unngå mellomrom.")
4
5tekstinput = input()          # tek imot alle tala
6    # konverterer tekststrengen til liste med tal (som framleis er tekst)
7talliste = tekstinput.split(",")
8
9for i in range(len(talliste)):
10    talliste[i] = float(talliste[i])    # konverterer alle tala til ekte tal
11
12gjsnitt = sum(talliste)/len(talliste)   # reknar ut gjennomsnittet
13print(f"Gjennomsnittet er {gjsnitt:.2f}.")
ST-111 c)

Forslag til algoritme som tek utgangspunkt i at tala blir skrivne inn eitt og eitt:

  • Skriv til skjermen: "Dette programmet reknar ut gjennomsnittet av tal sorterte i ein frekvenstabell."

  • Skriv til skjermen: "Skriv inn eitt og eitt av dei ulike førekomstane av måleverdiar og trykk enter for kvart tal. Skriv inn "s" når du er ferdig."

  • Skriv til skjermen: "Nytt tal: "

  • Ta imot talet frå brukaren. Dersom talet er eit tal: Legg til talet i ei liste.

  • Repeter dei to førre punkta over heilt til brukaren skriv ein "s".

  • Skriv til skjermen: "Skriv inn ein og ein av frekvensane og trykk enter for kvart tal. Skriv inn "s" når du er ferdig."

  • Skriv til skjermen: "Ny frekvens: "

  • Ta imot talet frå brukaren. Dersom talet er eit tal: Legg til talet i ei liste.

  • Repeter dei to førre punkta over heilt til brukaren skriv ein "s".

  • Multipliser saman tilhøyrande verdiar for måleverdi og frekvens, summer desse og del på summen av frekvensane i frekvenslista.

  • Skriv til skjermen: "Gjennomsnittet er <svaret frå det førre punktet>."


Forslag til kode i Python:

python

1print("Dette programmet reknar ut gjennomsnittet "
2"av tal sorterte i ein frekvenstabell.")
3print("Skriv inn eitt og eitt av dei ulike førekomstane " 
4"av måleverdiar, og trykk enter for kvart tal."
5" Skriv inn 's' når du er ferdig.")
6tal = 0
7talliste = []    # lagar ei tom liste
8           # tek imot tal heilt til det skrivast ein "s"
9while tal != "s":
10  tal = input("Nytt tal: ")
11  if tal != "s":             
12    tal = float(tal)
13    talliste.append(tal)  # legg talet til i tallista
14
15frekvens = 0
16frekvensliste = []    # lagar ei tom liste
17           # tek imot tal heilt til det skrivast ein "s"
18while frekvens != "s":
19  frekvens = input("Ny frekvens: ")
20  if frekvens != "s":             
21    frekvens = float(frekvens)
22    frekvensliste.append(frekvens)  # legg talet til i frekvenslista
23    
24summen = 0
25for i in range(len(frekvensliste)):
26  summen = summen + talliste[i] * frekvensliste[i]  # multipliserer saman verdi og frekvens
27    
28gsnitt = summen/sum(frekvensliste)    # reknar ut gjennomsnittet
29print(f"Gjennomsnittet av tala er {gsnitt:.2f}.")

Alternativ løysing

Vi tek utgangspunkt i den alternative løysinga i oppgåve b). Først skriv vi inn dei ulike førekomstane av måleverdiar. Så skriv vi inn frekvensane. Algoritmen kan då sjå slik ut:

  • Skriv til skjermen: "Dette programmet reknar ut gjennomsnittet av tal sorterte i ein frekvenstabell."

  • Skriv til skjermen: "Skriv inn dei ulike måleverdiane med eitt komma mellom kvart tal."

  • Ta imot tala og konverter dei til ei liste.

  • Skriv til skjermen: "Skriv inn frekvensane med eitt komma mellom kvart tal."

  • Ta imot tala og konverter dei til ei liste.

  • Multipliser saman tilhøyrande verdiar for måleverdi og frekvens, summer desse, og del på summen av frekvensane i frekvenslista.

  • Skriv til skjermen: "Gjennomsnittet er <svaret frå det førre punktet>."

Forslag til kode:

python

1print("Dette programmet reknar ut gjennomsnittet "
2    "av tal sorterte i ein frekvenstabell.")
3              # tek imot alle tala
4talstreng = input("Skriv inn måleverdiane med eitt komma mellom kvart tal: ")
5frekvensstreng = input("Skriv inn frekvensane med eitt komma mellom kvart tal: ")
6        # konverterer strengane til lister med tal (som framleis er tekst)
7talliste = talstreng.split(",")
8frekvensliste = frekvensstreng.split(",")
9        # konverterer alle tala til ekte tal
10for i in range(len(talliste)):
11    talliste[i] = float(talliste[i])
12for i in range(len(frekvensliste)):
13    frekvensliste[i] = float(frekvensliste[i])
14        # multipliserer saman måleverdi og frekvens
15summen = 0
16for i in range(len(frekvensliste)):
17    summen = summen + talliste[i] * frekvensliste[i]
18  
19gjsnitt = summen/sum(frekvensliste)    # reknar ut gjennomsnittet
20
21print(f"Gjennomsnittet er {gjsnitt:.2f}.")

Relatert innhald

Her får du ei kort innføring i strengar og strengesøk.

Kjelder

Statistisk sentralbyrå (u.å.). Statistikkbanken. Omsetning i varehandel. Henta 27. januar 2021 frå https://www.ssb.no/statbank/table/04776

Statistisk sentralbyrå (u.å.). Statistikkbanken. Overnattingar. Henta 27. januar 2021 frå https://www.ssb.no/statbank/table/08403/

Statistisk sentralbyrå (u.å.). Statistikkbanken. Reiseundersøkelsen. Henta 27. januar 2021 frå https://www.ssb.no/statbank/table/06921/

CC BY-SASkrive av Bjarne Skurdal, Tone Hadler-Olsen, Olav Kristensen og Stein Aanensens.
Sist fagleg oppdatert 09.09.2022

Læringsressursar

Statistikk