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 hver time i en uke. Skal du regne ut gjennomsnittet for hånd? Eller lage en graf med tusener av datapunkter? Det ville tatt evig tid!

Her kommer programmering inn i bildet. Med programmering kan du:
- Automatisere kjedelige beregninger
- Analysere store datasett på sekunder
- Visualisere resultater med fine grafer
- Simulere naturfenomener som er umulige å teste i virkeligheten

I dette kapitlet lærer du:
- Grunnleggende programmeringsbegreper
- Hvordan Python brukes i naturfag
- Dataanalyse med kode
- Visualisering av data
- Enkle simuleringer av naturprosesser

Algoritme

En algoritme er en steg-for-steg-oppskrift som beskriver nøyaktig hvordan en oppgave skal løses. Algoritmer er grunnlaget for all programmering. Et hverdagseksempel er en oppskrift for å bake en kake: den beskriver rekkefølgen av steg du må utføre for å nå resultatet. I programmering skrives algoritmene som kode som datamaskinen kan utføre.

Variabel

En variabel er et navngitt lagringssted i datamaskinen der du kan lagre en verdi. Verdien kan være et tall, tekst, en liste, eller sann/usann (boolsk verdi). Du kan tenke på en variabel som en merket boks som inneholder informasjon. Variabelen kan endres underveis i programmet. Eksempel: temperatur = 20 lagrer tallet 20 i variabelen kalt "temperatur".

Løkke (loop)

En løkke er en programmeringsstruktur som gjentar en blokk med kode et bestemt antall ganger, eller så lenge en betingelse er oppfylt. En for-løkke brukes når du vet hvor mange ganger koden skal gjentas, mens en while-løkke brukes når du vil gjenta koden så lenge en betingelse er sann. Løkker er essensielle for å behandle store datasett effektivt.

Funksjon

En funksjon er en gjenbrukbar blokk med kode som utfører en bestemt oppgave. Du definerer funksjonen én gang, og kan deretter kalle (bruke) den mange ganger i programmet. Funksjoner tar ofte inn parametre (input) og returnerer et resultat (output). Eksempel: en funksjon celsiustilfahrenheit(celsius) tar inn en temperatur i Celsius og returnerer verdien i Fahrenheit.

Hvorfor programmering i naturfag?

1. Automatisering


I stedet for å gjøre samme beregning 1000 ganger, lar du datamaskinen gjøre det for deg.

Eksempel: Du har målt vekten til 100 steiner. Med programmering kan du raskt:
- Finne gjennomsnittet
- Finne den tyngste og letteste steinen
- Sortere steinene etter vekt

2. Dataanalyse


Moderne naturfag handler om å samle og analysere data. Programmering lar deg:
- Lese data fra filer
- Finne mønstre i dataene
- Trekke konklusjoner basert på statistikk

Eksempel: Analysere klimadata for å se temperaturutvikling over tid.

3. Visualisering


Grafer og diagrammer gjør data lettere å forstå. Med programmering kan du:
- Lage linjediagrammer
- Lage søylediagrammer
- Lage spredningsplott

Eksempel: Visualisere hvordan plantevekst påvirkes av vannmengde.

4. Simulering


Noen eksperimenter er for farlige, dyre eller tidkrevende. Med simulering kan du:
- Modellere kjemiske reaksjoner
- Simulere bevegelse av planeter
- Teste hypoteser uten fysiske eksperimenter

Eksempel: Simulere hvordan en populasjon av kaniner utvikler seg over tid.

Grunnleggende programmeringsbegreper

1. Variabler


En variabel er som en boks der du kan lagre informasjon.

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

Analogi: Tenk på variabelen som en etikett på en boks. Boksen kan inneholde tall, tekst eller sann/usann-verdier.

2. Løkker


En løkke gjentar en handling flere ganger.

For-løkke: Gjenta et bestemt antall ganger

# 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 en betingelse er sann

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

3. Betingelser (if-else)


En betingelse lar programmet ta beslutninger.

temperatur = 25

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

4. Funksjoner


En funksjon er en 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 trenger bare å skrive koden én gang, så kan du bruke den mange ganger!

Python i naturfag

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

Hvorfor Python?


- Lett å lese og skrive
- Mye brukt i vitenskapelig forskning
- Mange biblioteker for naturfag (NumPy, Matplotlib, Pandas)
- Gratis og åpen kildekode

Eksempel: Beregne 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øyeste og laveste 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)

Et bibliotek (library) er en samling ferdig-skrevet kode som du kan bruke i dine egne programmer. I stedet for å skrive alt fra bunnen av, kan du importere et bibliotek som allerede har den funksjonaliteten du trenger. I Python er Matplotlib et bibliotek for å lage grafer, NumPy er et bibliotek for beregninger, og Pandas er et bibliotek for dataanalyse. Å bruke biblioteker er som å bruke ferdige byggesteiner i stedet for å lage alt selv.

✏️Eksempel: Algoritme for å beregne gjennomsnitt

Skriv en algoritme (steg-for-steg) for å beregne gjennomsnittstemperaturen fra en liste med temperaturer, og vis deretter Python-koden.

Algoritme (steg-for-steg):

1. Start med en liste med temperaturer
2. Legg sammen alle temperaturene (finn summen)
3. Tell hvor mange temperaturer det er
4. Del summen på antallet
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 hvert steg i algoritmen tilsvarer en linje i koden. Å skrive algoritmen først gjør det lettere å programmere!

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

Du har målt nedbør i mm for 10 dager: [0, 5, 12, 0, 3, 0, 8, 0, 15, 2]. Skriv Python-kode som finner alle dager med nedbør (mer enn 0 mm) og beregner gjennomsnittlig nedbørsmengde for regnværsdagene.

Løsning:

# 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økken går gjennom hver dag
- if mm > 0 filtrerer ut dager uten nedbør
- append() legger til verdien i den nye listen
- Til slutt beregner vi gjennomsnittet bare for regnværsdagene

✏️Eksempel: Funksjon for å beregne BMI

Skriv en Python-funksjon som beregner kroppsmasseindeks (BMI). Formelen er: BMI = vekt / (høyde)², der vekt er i kg og høyde er i meter.

Løsning:

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() tar inn vekt og høyde som parametre og returnerer BMI
- bmi_kategori() bruker if-elif-else for å klassifisere BMI
- Funksjoner gjør koden ryddigere og gjenbrukbar

📝Oppgave 6.3.1

Hva er en variabel i programmering?

📝Oppgave 6.3.2

Hva gjør en løkke i programmering?

📝Oppgave 6.3.3

Hva vil følgende kode skrive ut?

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

Dataanalyse med kode

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

Eksempel: Analyse av plantevekst

Du har målt høyden på planter som får ulik mengde vann:

# 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 vannmengde

# 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 vann gir høyest plantevekst!

📝Oppgave 6.3.4

Skriv en Python-funksjon som tar inn en temperatur i Celsius og returnerer temperaturen i Fahrenheit.

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

📝Oppgave 6.3.5

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

Skriv Python-kode som:
a) Finner gjennomsnittstemperaturen
b) Finner høyeste og laveste temperatur
c) Teller hvor mange dager som hadde temperatur over 20°C

📝Oppgave 6.3.6

Lag en Python-funksjon som beregner fart.

Formelen er: fart = strekning / tid

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

Visualisering av data

Grafer gjør det lettere å se mønstre i data. I Python bruker 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: En graf som viser hvordan temperaturen varierer over uken.

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 tydelig at 60 ml vann gir best vekst!

📝Oppgave 6.3.7

Du har målt høyden til en plante hver dag i 5 dager:
- Dag 1: 2 cm
- Dag 2: 4 cm
- Dag 3: 7 cm
- Dag 4: 11 cm
- Dag 5: 16 cm

Skriv Python-kode som lager et linjediagram av veksten.

📝Oppgave 6.3.8

Du teller antall ulike insekter i hagen:
- Bier: 15
- Maur: 42
- Sommerfugler: 8
- Biller: 23

Lag et søylediagram som viser fordelingen.

Enkle simuleringer

Med programmering kan vi simulere naturprosesser som er umulige eller upraktiske å teste i virkeligheten.

Eksempel: Simulering av populasjonsvekst

La oss simulere hvordan en kaninpopulasjon vokser:

Antakelser:
- Starter med 10 kaniner
- Populasjonen dobler seg hvert å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 vokser ekstremt raskt.

Eksempel: Simulering med begrensninger

I virkeligheten er det en grense for hvor mange kaniner 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 vokser til den når 100 kaniner, så stopper veksten.

📝Oppgave 6.3.9

Du har følgende data for plantevekst med ulik mengde gjødsel (gram) og høyde (cm):

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

Skriv kode som:
a) Finner optimal mengde gjødsel (som gir høyest plante)
b) Beregner gjennomsnittlig plantehøyde
c) Teller hvor mange planter som ble høyere enn 12 cm

📝Oppgave 6.3.10

Du har temperaturdata for to byer over en uke:

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

Skriv kode som:
a) Finner gjennomsnitt for begge byene
b) Finner hvilken by som hadde høyest temperatur
c) Teller hvor mange dager Oslo var varmere enn Bergen
d) Lager et linjediagram som sammenligner temperaturene

📝Oppgave 6.3.11

Bakterier deler seg (dobler antallet) hver 20. minutt.

Lag en simulering som:
a) Starter med 1 bakterie
b) Simulerer vekst over 3 timer (180 minutter)
c) Skriver ut antall bakterier hvert 20. minutt
d) Lager et linjediagram av veksten

📝Oppgave 6.3.12

Lag en simulering av en ball som kastes rett opp i luften.

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

Simuler til ballen treffer bakken (høyde = 0) og finn:
a) Maksimal høyde
b) Total tid i luften
c) Lag et linjediagram av høyde over tid

Oppsummering

Hva har vi lært?

Hvorfor programmering i naturfag:
- Automatisering av beregninger
- Dataanalyse av store datasett
- Visualisering med grafer
- Simulering av naturprosesser

Grunnleggende begreper:
- Variabler → Lagrer informasjon
- Løkker → Gjentar handlinger
- Betingelser → Tar beslutninger
- Funksjoner → Gjenbrukbar kode

Python:
- Populært språk i vitenskap
- Lett å lære
- Kraftige biblioteker (Matplotlib for grafer)

Dataanalyse:
- Beregne gjennomsnitt, max, min
- Finne mønstre i data
- Trekke konklusjoner

Visualisering:
- Linjediagrammer for utvikling over tid
- Søylediagrammer for sammenligning
- Grafer gjør data lettere å forstå

Simuleringer:
- Modellere naturprosesser
- Teste hypoteser
- Forstå komplekse systemer

Viktigste poeng

1. Programmering er et verktøy – Det hjelper oss å jobbe smartere, ikke hardere
2. Visualisering gir innsikt – Grafer avslører mønstre som er vanskelige å se i rå data
3. Simuleringer utforsker umuligheter – Vi kan teste scenarier som er for farlige, dyre eller tidkrevende i virkeligheten

Neste steg

Nå som du forstår grunnleggende programmering i naturfag, kan du:
- Analysere dine egne eksperimenter
- Lage imponerende grafer
- Simulere naturprosesser
- Utforske data på nye måter

Programmering åpner døren til moderne naturvitenskap!

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

Du har 1000 atomer av et radioaktivt stoff med halveringstid 10 minutter. Skriv Python-kode som simulerer nedbrytningen til det er færre enn 10 atomer igjen.

Løsning:

# 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: → Fortsett så lenge det er 10 eller flere atomer
- atomer = atomer / 2 → Halvparten av atomene brytes ned hvert 10. minutt
- Etter 70 minutter (7 halveringstider) er det kun 8 atomer igjen

Læringspoeng:
- While-løkken er perfekt når vi ikke vet på forhånd hvor mange ganger vi skal gjenta
- Simuleringen viser eksponentiell nedbrytning - hvert tidssteg halveres antallet

📝Oppgave 6.3.13

Hva 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

Hva skriver 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øyden til 8 elever i cm: [155, 162, 170, 148, 175, 160, 168, 158]

Skriv Python-kode som:
a) Finner gjennomsnittshøyden
b) Teller hvor mange som er over 165 cm
c) Finner forskjellen mellom den høyeste og den laveste eleven

📝Oppgave 6.3.16

Skriv en Python-funksjon kalt analysere_data som tar inn en liste med tall og returnerer en ordbok (dictionary) med gjennomsnitt, høyeste verdi, laveste verdi og antall verdier. Test funksjonen med temperaturdata.

📝Oppgave 6.3.17a

Hva gjør 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 virkelige temperaturdata med Python

Du har temperaturdata for Oslo over 12 måneder. Skriv et komplett Python-program som analyserer dataene og lager en graf.

Løsning:

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åneder under 0°C, røde viser over 0°C
- Grønn stiplet linje viser årsgjennomsnitt
- Programmet kombinerer dataanalyse (beregninger) med visualisering (graf)
- Dette er typisk for hvordan forskere analyserer klimadata

📝Oppgave 6.3.18

Du vil simulere 100 kast med en vanlig terning (1-6) og finne ut hvor mange ganger hvert tall kommer opp. Skriv Python-kode som gjennomfører simuleringen og viser resultatet.

📝Oppgave 6.3.19

Hva er en algoritme? Forklar begrepet med et hverdagseksempel og et 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.