Tilbake
6.3
Programmering i naturfag

6.3 Programmering i naturfag

Grunnleggende programmering for å løse naturfaglige problemer og analysere data.

50 min
12 oppgaver
ProgrammeringAlgoritmerVariablerLøkkerBetingelserDataanalyse
Du leser den tradisjonelle versjonen
Din fremgang i kapitlet
0 / 12 oppgaver
Kapitlets plass i kurset

Programmering i naturfag

Tenk deg at du har målt temperaturen kvar time i ei veke. Skal du rekne ut gjennomsnittet for hand? Eller lage ein graf med tusenvis av datapunkt? Det ville teke evig tid!

Her kjem programmering inn i biletet. Med programmering kan du:
- Automatisere kjedelege berekningar
- Analysere store datasett på sekund
- Visualisere resultat med fine grafar
- Simulere naturfenomen som er umoglege å teste i verkelegheita

I dette kapittelet lærer du:
- Grunnleggande programmeringsomgrep
- Korleis Python blir brukt i naturfag
- Dataanalyse med kode
- Visualisering av data
- Enkle simuleringar av naturprosessar

Algoritme

Ein algoritme er ei steg-for-steg-oppskrift som beskriv nøyaktig korleis ei oppgåve skal løysast. Algoritmar er grunnlaget for all programmering. Eit kvardagseksempel er ei oppskrift for å bake ei kake: ho beskriv rekkjefølgja av steg du må utføre for å nå resultatet. I programmering blir algoritmane skrivne som kode datamaskinen kan utføre.

Variabel

Ein variabel er ein namngjeven lagringsstad i datamaskinen der du kan lagre ein verdi. Verdien kan vere eit tal, tekst, ei liste, eller sann/usann (boolsk verdi). Du kan tenkje på ein variabel som ein merkt boks som inneheld informasjon. Variabelen kan endrast undervegs i programmet. Eksempel: temperatur = 20 lagrar talet 20 i variabelen kalla "temperatur".

Løkke (loop)

Ei løkke er ein programmeringsstruktur som gjentek ein blokk med kode eit bestemt tal gonger, eller så lenge eit vilkår er oppfylt. Ei for-løkke blir brukt når du veit kor mange gonger koden skal gjentakast, medan ei while-løkke blir brukt når du vil gjenta koden så lenge eit vilkår er sant. Løkker er essensielle for å behandle store datasett effektivt.

Funksjon

Ein funksjon er ein gjenbrukbar blokk med kode som utfører ei bestemt oppgåve. Du definerer funksjonen éin gong, og kan deretter kalle (bruke) han mange gonger i programmet. Funksjonar tek ofte inn parametrar (input) og returnerer eit resultat (output). Eksempel: ein funksjon celsiustilfahrenheit(celsius) tek inn ein temperatur i Celsius og returnerer verdien i Fahrenheit.

Kvifor programmering i naturfag?

1. Automatisering


I staden for å gjere same berekning 1000 gonger, lèt du datamaskinen gjere det for deg.

Eksempel: Du har målt vekta til 100 steinar. Med programmering kan du raskt:
- Finne gjennomsnittet
- Finne den tyngste og lettaste steinen
- Sortere steinane etter vekt

2. Dataanalyse


Moderne naturfag handlar om å samle og analysere data. Programmering lèt deg:
- Lese data frå filer
- Finne mønster i dataa
- Trekkje konklusjonar basert på statistikk

Eksempel: Analysere klimadata for å sjå temperaturutvikling over tid.

3. Visualisering


Grafar og diagram gjer data lettare å forstå. Med programmering kan du:
- Lage linjediagram
- Lage søylediagram
- Lage spreiingsplott

Eksempel: Visualisere korleis plantevekst blir påverka av vassmengd.

4. Simulering


Nokre eksperiment er for farlege, dyre eller tidkrevjande. Med simulering kan du:
- Modellere kjemiske reaksjonar
- Simulere rørsla til planetar
- Teste hypotesar utan fysiske eksperiment

Eksempel: Simulere korleis ein populasjon av kaninar utviklar seg over tid.

Grunnleggande programmeringsomgrep

1. Variablar


Ein variabel er som ein boks der du kan lagre informasjon.

# Lagre temperatur i en variabel
temperatur = 20
navn = "Oslo"
er_kaldt = False

Analogi: Tenk på variabelen som ein etikett på ein boks. Boksen kan innehalde tal, tekst eller sann/usann-verdiar.

2. Løkker


Ei løkke gjentek ei handling fleire gonger.

For-løkke: Gjenta eit bestemt tal gonger

# Skriv ut temperatur for 5 dager
temperaturer = [18, 20, 22, 19, 21]
for temp in temperaturer:
    print(f"Temperaturen er {temp}°C")

While-løkke: Gjenta så lenge eit vilkår er sant

# Tell ned fra 10 til 0
tall = 10
while tall >= 0:
    print(tall)
    tall = tall - 1

3. Vilkår (if-else)


Eit vilkår lèt programmet ta avgjerder.

temperatur = 25

if temperatur > 30:
    print("Veldig varmt!")
elif temperatur > 20:
    print("Behagelig temperatur")
else:
    print("Kaldt")

4. Funksjonar


Ein funksjon er ein gjenbrukbar blokk med kode.

def celsius_til_fahrenheit(celsius):
    fahrenheit = celsius * 9/5 + 32
    return fahrenheit

# Bruk funksjonen
temp_f = celsius_til_fahrenheit(20)
print(f"20°C = {temp_f}°F")

Fordel: Du treng berre å skrive koden éin gong, så kan du bruke han mange gonger!

Python i naturfag

Python er eit populært programmeringsspråk som er lett å lære og kraftig nok til profesjonell forsking.

Kvifor Python?


- Lett å lese og skrive
- Mykje brukt i vitskapleg forsking
- Mange bibliotek for naturfag (NumPy, Matplotlib, Pandas)
- Gratis og open kjeldekode

Eksempel: Rekne ut gjennomsnitt


# Temperaturer målt over en uke (°C)
temperaturer = [18, 20, 22, 19, 21, 23, 20]

# Beregn gjennomsnittet
gjennomsnitt = sum(temperaturer) / len(temperaturer)

print(f"Gjennomsnittstemperatur: {gjennomsnitt:.1f}°C")
# Output: Gjennomsnittstemperatur: 20.4°C

Eksempel: Finne høgaste og lågaste verdi


# Finn høyeste og laveste temperatur
hogste = max(temperaturer)
laveste = min(temperaturer)

print(f"Høyeste: {hogste}°C")
print(f"Laveste: {laveste}°C")
# Output:
# Høyeste: 23°C
# Laveste: 18°C
Bibliotek (i programmering)

Eit bibliotek (library) er ei samling ferdigskriven kode som du kan bruke i dine eigne program. I staden for å skrive alt frå botnen av, kan du importere eit bibliotek som allereie har den funksjonaliteten du treng. I Python er Matplotlib eit bibliotek for å lage grafar, NumPy er eit bibliotek for berekningar, og Pandas er eit bibliotek for dataanalyse. Å bruke bibliotek er som å bruke ferdige byggjesteinar i staden for å lage alt sjølv.

✏️Eksempel: Algoritme for å rekne ut gjennomsnitt

Skriv ein algoritme (steg-for-steg) for å rekne ut gjennomsnittstemperaturen frå ei liste med temperaturar, og vis deretter Python-koden.

Algoritme (steg-for-steg):

1. Start med ei liste med temperaturar
2. Legg saman alle temperaturane (finn summen)
3. Tel kor mange temperaturar det er
4. Del summen på talet
5. Skriv ut resultatet

Python-kode:

# Steg 1: Liste med temperaturer
temperaturer = [18, 20, 22, 19, 21, 23, 20]

# Steg 2: Finn summen
total = sum(temperaturer)  # total = 143

# Steg 3: Tell antall
antall = len(temperaturer)  # antall = 7

# Steg 4: Beregn gjennomsnitt
gjennomsnitt = total / antall  # gjennomsnitt = 20.43

# Steg 5: Skriv ut
print(f"Gjennomsnitt: {gjennomsnitt:.1f}°C")
# Output: Gjennomsnitt: 20.4°C

Legg merke til at kvart steg i algoritmen svarar til ei linje i koden. Å skrive algoritmen først gjer det lettare å programmere!

✏️Eksempel: Bruke løkke til å filtrere data

Du har målt nedbør i mm for 10 dagar: [0, 5, 12, 0, 3, 0, 8, 0, 15, 2]. Skriv Python-kode som finn alle dagar med nedbør (meir enn 0 mm) og reknar ut gjennomsnittleg nedbørsmengd for regnversdagane.

Løysing:

# Data: Nedbør i mm for 10 dager
nedbor = [0, 5, 12, 0, 3, 0, 8, 0, 15, 2]

# Finn dager med nedbør
regnvarsdager = []
for mm in nedbor:
    if mm > 0:
        regnvarsdager.append(mm)

# Beregn gjennomsnitt for regnværsdager
gjennomsnitt = sum(regnvarsdager) / len(regnvarsdager)

print(f"Antall regnværsdager: {len(regnvarsdager)}")
print(f"Gjennomsnittlig nedbør på regnværsdager: {gjennomsnitt:.1f} mm")

# Output:
# Antall regnværsdager: 6
# Gjennomsnittlig nedbør på regnværsdager: 7.5 mm

Forklaring:
- Løkka går gjennom kvar dag
- if mm > 0 filtrerer ut dagar utan nedbør
- append() legg til verdien i den nye lista
- Til slutt reknar vi ut gjennomsnittet berre for regnversdagane

✏️Eksempel: Funksjon for å rekne ut BMI

Skriv ein Python-funksjon som reknar ut kroppsmasseindeks (BMI). Formelen er: BMI = vekt / (høgd)², der vekt er i kg og høgd er i meter.

Løysing:

def beregn_bmi(vekt_kg, hoyde_m):
    """Beregner BMI fra vekt (kg) og høyde (m)"""
    bmi = vekt_kg / (hoyde_m ** 2)
    return bmi

def bmi_kategori(bmi):
    """Returnerer BMI-kategori basert på verdi"""
    if bmi < 18.5:
        return "Undervekt"
    elif bmi < 25:
        return "Normalvekt"
    elif bmi < 30:
        return "Overvekt"
    else:
        return "Fedme"

# Test funksjonen
vekt = 70
hoyde = 1.75
bmi = beregn_bmi(vekt, hoyde)
kategori = bmi_kategori(bmi)

print(f"BMI: {bmi:.1f}")
print(f"Kategori: {kategori}")
# Output:
# BMI: 22.9
# Kategori: Normalvekt

Forklaring:
- beregn_bmi() tek inn vekt og høgd som parametrar og returnerer BMI
- bmi_kategori() brukar if-elif-else for å klassifisere BMI
- Funksjonar gjer koden ryddigare og gjenbrukbar

📝Oppgave 6.3.1

Kva er ein variabel i programmering?

📝Oppgave 6.3.2

Kva gjer ei løkke i programmering?

📝Oppgave 6.3.3

Kva vil følgjande kode skrive ut?

temp = 15
if temp > 20:
    print("Varmt")
else:
    print("Kaldt")

Dataanalyse med kode

Programmering blir verkeleg kraftig når du analyserer store datasett.

Eksempel: Analyse av plantevekst

Du har målt høgda på plantar som får ulik mengd vatn:

# Data: [vann_ml, høyde_cm]
data = [
    [10, 5],
    [20, 8],
    [30, 12],
    [40, 15],
    [50, 18],
    [60, 20],
    [70, 19],
    [80, 18],
]

# Finn gjennomsnittlig høyde
hoyder = [punkt[1] for punkt in data]
gjennomsnitt = sum(hoyder) / len(hoyder)

print(f"Gjennomsnittlig høyde: {gjennomsnitt:.1f} cm")
# Output: Gjennomsnittlig høyde: 14.4 cm

Finn optimal vassmengd

# Finn datapunktet med høyest plante
beste_punkt = max(data, key=lambda punkt: punkt[1])
best_vann = beste_punkt[0]
best_hoyde = beste_punkt[1]

print(f"Optimal vannmengde: {best_vann} ml → høyde {best_hoyde} cm")
# Output: Optimal vannmengde: 60 ml → høyde 20 cm

Konklusjon: Med kode kan vi raskt finne at 60 ml vatn gjev høgast plantevekst!

📝Oppgave 6.3.4

Skriv ein Python-funksjon som tek inn ein temperatur i Celsius og returnerer temperaturen i Fahrenheit.

Formelen er: F = C × 9/5 + 32

📝Oppgave 6.3.5

Du har målt følgjande temperaturar (°C): [18, 22, 20, 25, 19, 21, 23]

Skriv Python-kode som:
a) Finn gjennomsnittstemperaturen
b) Finn høgaste og lågaste temperatur
c) Tel kor mange dagar som hadde temperatur over 20°C

📝Oppgave 6.3.6

Lag ein Python-funksjon som reknar ut fart.

Formelen er: fart = strekning / tid

Funksjonen skal ta inn strekning (meter) og tid (sekund), og returnere farten i m/s.

Visualisering av data

Grafar gjer det lettare å sjå mønster i data. I Python brukar vi biblioteket Matplotlib.

Eksempel: Linjediagram av temperatur

import matplotlib.pyplot as plt

# Data
dager = [1, 2, 3, 4, 5, 6, 7]
temperaturer = [18, 20, 22, 19, 21, 23, 20]

# Lag linjediagram
plt.plot(dager, temperaturer, marker='o')
plt.xlabel('Dag')
plt.ylabel('Temperatur (°C)')
plt.title('Temperatur over en uke')
plt.grid(True)
plt.show()

Resultat: Ein graf som viser korleis temperaturen varierer over veka.

Eksempel: Søylediagram

import matplotlib.pyplot as plt

# Data: Plantehøyder med ulik vannmengde
vann = [10, 20, 30, 40, 50, 60, 70, 80]
hoyder = [5, 8, 12, 15, 18, 20, 19, 18]

# Lag søylediagram
plt.bar(vann, hoyder, color='green')
plt.xlabel('Vann (ml)')
plt.ylabel('Høyde (cm)')
plt.title('Plantevekst vs. vannmengde')
plt.show()

Fordel: Du ser tydeleg at 60 ml vatn gjev best vekst!

📝Oppgave 6.3.7

Du har målt høgda til ei plante kvar dag i 5 dagar:
- Dag 1: 2 cm
- Dag 2: 4 cm
- Dag 3: 7 cm
- Dag 4: 11 cm
- Dag 5: 16 cm

Skriv Python-kode som lagar eit linjediagram av veksten.

📝Oppgave 6.3.8

Du tel talet på ulike insekt i hagen:
- Bier: 15
- Maur: 42
- Sommarfuglar: 8
- Biller: 23

Lag eit søylediagram som viser fordelinga.

Enkle simuleringar

Med programmering kan vi simulere naturprosessar som er umoglege eller upraktiske å teste i verkelegheita.

Eksempel: Simulering av populasjonsvekst

La oss simulere korleis ein kaninpopulasjon veks:

Føresetnader:
- Startar med 10 kaninar
- Populasjonen doblar seg kvart år
- Simuler over 5 år

# Startpopulasjon
kaniner = 10
ar = 0

print(f"År {ar}: {kaniner} kaniner")

# Simuler 5 år
for ar in range(1, 6):
    kaniner = kaniner * 2
    print(f"År {ar}: {kaniner} kaniner")

# Output:
# År 0: 10 kaniner
# År 1: 20 kaniner
# År 2: 40 kaniner
# År 3: 80 kaniner
# År 4: 160 kaniner
# År 5: 320 kaniner

Observasjon: Eksponentiell vekst! Populasjonen veks ekstremt raskt.

Eksempel: Simulering med avgrensingar

I verkelegheita er det ei grense for kor mange kaninar miljøet kan støtte:

# Startpopulasjon
kaniner = 10
max_kaniner = 100  # Miljøet kan maks støtte 100 kaniner

for ar in range(1, 11):
    # Populasjonen vokser med 50% hvert år
    kaniner = kaniner * 1.5

    # Men kan ikke overstige miljøets kapasitet
    if kaniner > max_kaniner:
        kaniner = max_kaniner

    print(f"År {ar}: {kaniner:.0f} kaniner")

Resultat: Populasjonen veks til han når 100 kaninar, så stoppar veksten.

📝Oppgave 6.3.9

Du har følgjande data for plantevekst med ulik mengd gjødsel (gram) og høgd (cm):

data = [
    [0, 5],
    [5, 8],
    [10, 12],
    [15, 14],
    [20, 15],
    [25, 14],
    [30, 12],
]

Skriv kode som:
a) Finn optimal mengd gjødsel (som gjev høgast plante)
b) Reknar ut gjennomsnittleg plantehøgd
c) Tel kor mange plantar som vart høgare enn 12 cm

📝Oppgave 6.3.10

Du har temperaturdata for to byar over ei veke:

oslo = [18, 20, 22, 19, 21, 23, 20]
bergen = [15, 16, 17, 16, 18, 19, 17]

Skriv kode som:
a) Finn gjennomsnitt for begge byane
b) Finn kva by som hadde høgast temperatur
c) Tel kor mange dagar Oslo var varmare enn Bergen
d) Lagar eit linjediagram som samanliknar temperaturane

📝Oppgave 6.3.11

Bakteriar deler seg (doblar talet) kvart 20. minutt.

Lag ei simulering som:
a) Startar med 1 bakterie
b) Simulerer vekst over 3 timar (180 minutt)
c) Skriv ut talet på bakteriar kvart 20. minutt
d) Lagar eit linjediagram av veksten

📝Oppgave 6.3.12

Lag ei simulering av ein ball som blir kasta rett opp i lufta.

Data:
- Startfart: 20 m/s (oppover)
- Tyngdeakselerasjon: 10 m/s² (nedover)
- Tidssteg: 0.1 sekund

Simuler til ballen treff bakken (høgd = 0) og finn:
a) Maksimal høgd
b) Total tid i lufta
c) Lag eit linjediagram av høgd over tid

Oppsummering

Kva har vi lært?

Kvifor programmering i naturfag:
- Automatisering av berekningar
- Dataanalyse av store datasett
- Visualisering med grafar
- Simulering av naturprosessar

Grunnleggande omgrep:
- Variablar → Lagrar informasjon
- Løkker → Gjentek handlingar
- Vilkår → Tek avgjerder
- Funksjonar → Gjenbrukbar kode

Python:
- Populært språk i vitskap
- Lett å lære
- Kraftige bibliotek (Matplotlib for grafar)

Dataanalyse:
- Rekne ut gjennomsnitt, max, min
- Finne mønster i data
- Trekkje konklusjonar

Visualisering:
- Linjediagram for utvikling over tid
- Søylediagram for samanlikning
- Grafar gjer data lettare å forstå

Simuleringar:
- Modellere naturprosessar
- Teste hypotesar
- Forstå komplekse system

Viktigaste poeng

1. Programmering er eit verktøy – Det hjelper oss å jobbe smartare, ikkje hardare
2. Visualisering gjev innsikt – Grafar avslører mønster som er vanskelege å sjå i rådata
3. Simuleringar utforskar umoglegheiter – Vi kan teste scenario som er for farlege, dyre eller tidkrevjande i verkelegheita

Neste steg

No som du forstår grunnleggande programmering i naturfag, kan du:
- Analysere dine eigne eksperiment
- Lage imponerande grafar
- Simulere naturprosessar
- Utforske data på nye måtar

Programmering opnar døra til moderne naturvitskap!

✏️Eksempel: While-løkke for å simulere radioaktiv halveringstid

Du har 1000 atom av eit radioaktivt stoff med halveringstid 10 minutt. Skriv Python-kode som simulerer nedbrytinga til det er færre enn 10 atom att.

Løysing:

# Startbetingelser
atomer = 1000
halveringstid = 10  # minutter
tid = 0

print(f"Tid: {tid} min → {atomer} atomer")

# Simuler med while-løkke
while atomer >= 10:
    tid = tid + halveringstid
    atomer = atomer / 2
    print(f"Tid: {tid} min → {atomer:.0f} atomer")

# Output:
# Tid: 0 min → 1000 atomer
# Tid: 10 min → 500 atomer
# Tid: 20 min → 250 atomer
# Tid: 30 min → 125 atomer
# Tid: 40 min → 63 atomer
# Tid: 50 min → 31 atomer
# Tid: 60 min → 16 atomer
# Tid: 70 min → 8 atomer (stopper fordi 8 < 10)

Forklaring:
- while atomer >= 10: → Hald fram så lenge det er 10 eller fleire atom
- atomer = atomer / 2 → Halvparten av atoma blir brotne ned kvart 10. minutt
- Etter 70 minutt (7 halveringstider) er det berre 8 atom att

Læringspoeng:
- While-løkka er perfekt når vi ikkje veit på førehand kor mange gonger vi skal gjenta
- Simuleringa viser eksponentiell nedbryting - kvart tidssteg halverer talet

📝Oppgave 6.3.13

Kva er feilen i denne koden?

temperaturer = [18, 20, 22, 19, 21]
gjennomsnitt = sum(temperaturer) / len(temperaturer)
print(f"Gjennomsnittet er {gjenomsnitt}°C")

📝Oppgave 6.3.14

Kva skriv denne koden ut?

tall = [3, 7, 2, 9, 4]
resultat = 0
for t in tall:
    if t > 5:
        resultat = resultat + t
print(resultat)

📝Oppgave 6.3.15

Du har målt høgda til 8 elevar i cm: [155, 162, 170, 148, 175, 160, 168, 158]

Skriv Python-kode som:
a) Finn gjennomsnittshøgda
b) Tel kor mange som er over 165 cm
c) Finn skilnaden mellom den høgaste og den lågaste eleven

📝Oppgave 6.3.16

Skriv ein Python-funksjon kalla analysere_data som tek inn ei liste med tal og returnerer ei ordbok (dictionary) med gjennomsnitt, høgaste verdi, lågaste verdi og tal på verdiar. Test funksjonen med temperaturdata.

📝Oppgave 6.3.17a

Kva gjer denne koden?

data = [5, 12, 8, 3, 15, 7, 20, 1]
filtrert = []
for verdi in data:
    if verdi >= 10:
        filtrert.append(verdi)
print(filtrert)

✏️Eksempel: Analyse av verkelege temperaturdata med Python

Du har temperaturdata for Oslo over 12 månadar. Skriv eit komplett Python-program som analyserer dataa og lagar ein graf.

Løysing:

import matplotlib.pyplot as plt

# Virkelige gjennomsnittstemperaturer for Oslo (°C)
maneder = ['Jan', 'Feb', 'Mar', 'Apr', 'Mai', 'Jun',
           'Jul', 'Aug', 'Sep', 'Okt', 'Nov', 'Des']
temperaturer = [-4.3, -4.0, 0.2, 5.6, 11.3, 15.0,
                16.4, 15.2, 10.8, 6.3, 0.7, -3.1]

# Analyse
gjennomsnitt = sum(temperaturer) / len(temperaturer)
varmeste = max(temperaturer)
kaldeste = min(temperaturer)
varmeste_maned = maneder[temperaturer.index(varmeste)]
kaldeste_maned = maneder[temperaturer.index(kaldeste)]

# Beregn antall måneder under 0°C
frostmaneder = sum(1 for t in temperaturer if t < 0)

# Skriv ut analyse
print("=== Temperaturanalyse for Oslo ===")
print(f"Gjennomsnitt: {gjennomsnitt:.1f}°C")
print(f"Varmeste måned: {varmeste_maned} ({varmeste}°C)")
print(f"Kaldeste måned: {kaldeste_maned} ({kaldeste}°C)")
print(f"Antall frostmåneder: {frostmaneder}")
print(f"Temperaturspenn: {varmeste - kaldeste:.1f}°C")

# Lag graf
fig, ax = plt.subplots(figsize=(10, 6))
farger = ['blue' if t < 0 else 'red' for t in temperaturer]
ax.bar(maneder, temperaturer, color=farger)
ax.axhline(y=0, color='black', linestyle='-', linewidth=0.5)
ax.axhline(y=gjennomsnitt, color='green', linestyle='--',
           label=f'Gjennomsnitt ({gjennomsnitt:.1f}°C)')
ax.set_xlabel('Måned')
ax.set_ylabel('Temperatur (°C)')
ax.set_title('Gjennomsnittstemperatur i Oslo')
ax.legend()
ax.grid(axis='y', alpha=0.3)
plt.show()

Output:

=== Temperaturanalyse for Oslo ===
Gjennomsnitt: 5.8°C
Varmeste måned: Jul (16.4°C)
Kaldeste måned: Jan (-4.3°C)
Antall frostmåneder: 4
Temperaturspenn: 20.7°C

Forklaring:
- Blå søyler viser månadar under 0°C, raude viser over 0°C
- Grøn stipla linje viser årsgjennomsnitt
- Programmet kombinerer dataanalyse (berekningar) med visualisering (graf)
- Dette er typisk for korleis forskarar analyserer klimadata

📝Oppgave 6.3.18

Du vil simulere 100 kast med ein vanleg terning (1-6) og finne ut kor mange gonger kvart tal kjem opp. Skriv Python-kode som gjennomfører simuleringa og viser resultatet.

📝Oppgave 6.3.19

Kva er ein algoritme? Forklar omgrepet med eit kvardagseksempel og eit programmeringseksempel.

Dette kapitlet er skrevet av Anthropics toppmodeller (Claude Opus og Claude Fable) og er foreløpig ikke manuelt gjennomgått — kvalitetskontrollen gjøres av uavhengige KI-agenter, og innmeldte feil rettes fortløpende. Funnet en feil? Meld fra, så retter vi den. Les mer om hvordan innholdet lages.