1T eksamenEksempel 2020

Matematikk 1T eksamen – eksempel 2020

ifingo
Norsk (Bokmål)
Matematikk 1T · Eksamen

1T Eksempeloppgaver 2020 — løsningsforslag

📘 GeoGebra & Python-guide

Matematikk 1T · LK20

Matematikk 1T eksempeloppgaver Høst 2020 – løsningsforslag

Denne filen inneholder originale, trinnvise ifingo-løsninger til eksempeloppgavene fra fagfornyelsen. Oppgavene er delt etter hovedgruppene i PDF-en, med presis matematikknotasjon, GeoGebra/CAS-kontroll og realistiske Python-eksempler der programmering er relevant.

Hovedgruppe 1 — automatisk vurderte oppgavetyper

Hovedgruppe 1 · Oppgave 1Geometri · Herons formel

Oppgave 1

Oppgave:

Matematikeren Heron fra Alexandria har fått en formel oppkalt etter seg.

Vi kan bruke Herons formel til å beregne arealet \(T\) av en trekant med sider \(a\), \(b\) og \(c\):

\[T=\sqrt{s\left(s-a\right)\left(s-b\right)\left(s-c\right)}\quad \text{der}\quad s=\dfrac{a+b+c}{2}\]

Trekanten \(ABC\) har sider som er 13 cm, 14 cm og 15 cm.

Hvor stort areal har trekanten?

Vis løsning

Hva spør oppgaven om? Vi skal bruke Herons formel til å finne arealet direkte fra de tre sidelengdene.

Steg 1 — Finn halvomkretsen

Her er \(a=13\), \(b=14\) og \(c=15\). Derfor er

\[s=\dfrac{13+14+15}{2}=\dfrac{42}{2}=21\]

Herons formel bruker halvomkretsen, ikke hele omkretsen.

Steg 2 — Sett inn i Herons formel

\[T=\sqrt{21\left(21-13\right)\left(21-14\right)\left(21-15\right)}\]

Vi erstatter hver side med sidelengden fra oppgaven.

Steg 3 — Regn faktorene inni kvadratroten

\[T=\sqrt{21\cdot 8\cdot 7\cdot 6}\]

Dette er arealet i kvadratcentimeter før vi tar kvadratroten.

Steg 4 — Forenkle

\[21\cdot 8\cdot 7\cdot 6=7056\]

Dermed får vi

\[T=\sqrt{7056}=84\]

Tolkning

Arealet av trekanten er \(84\) kvadratcentimeter.

Vanlig feil: Å bruke \(s=13+14+15\) i stedet for halvomkretsen \(s=\dfrac{13+14+15}{2}\).

Kontroll (GeoGebra CAS / Python)

GeoGebra · CAS
1
s := (13 + 14 + 15) / 2
\(21\)
2
sqrt(s (s - 13) (s - 14) (s - 15))
\(84\)

Python

from sympy import sqrt, simplify

a = 13
b = 14
c = 15
s = (a + b + c) / 2
areal = sqrt(s * (s - a) * (s - b) * (s - c))

print("Halvomkrets s =", s)
print("Areal T =", simplify(areal), "cm^2")
Fasit: \(84\,\text{cm}^2\)
Hovedgruppe 1 · Oppgave 2Eksponentialmodell · prosentvis endring

Oppgave 2

Oppgave:

Det gjennomsnittlige lufttrykket ved havoverflaten er 1013 millibar.

Toppen av fjellet Mount Everest er 8848 meter over havet.

Når høyden over havet øker, avtar lufttrykket med 12 % per kilometer.

Hvor stort er lufttrykket på toppen av Mount Everest?

Vis løsning

Hva spør oppgaven om? Vi skal modellere gjentatt prosentvis reduksjon. Siden trykket avtar med samme prosent per kilometer, bruker vi eksponentialmodell.

Steg 1 — Gjør høyden om til kilometer

\[8848\,\text{m}=8{,}848\,\text{km}\]

Prosentendringen er gitt per kilometer, derfor må høyden måles i kilometer.

Steg 2 — Finn vekstfaktoren

Når noe avtar med \(12\,\%\), er vekstfaktoren

\[1-0{,}12=0{,}88\]

Steg 3 — Sett opp modellen

Hvis \(x\) er høyde i kilometer, kan trykket modelleres ved

\[P\left(x\right)=1013\cdot 0{,}88^x\]

Steg 4 — Regn trykket på Mount Everest

\[P\left(8{,}848\right)=1013\cdot 0{,}88^{8{,}848}\approx 326{,}9\]

Tolkning

Med denne modellen er lufttrykket på toppen omtrent \(327\) millibar.

Vanlig feil: Å bruke \(8848\) som eksponent direkte. Eksponenten må være antall kilometer, ikke antall meter.

Kontroll (GeoGebra CAS / Python)

GeoGebra · CAS
1
1013 * 0.88^(8848/1000)
\(326.9\)

Python

from math import pow

trykk_havniva = 1013          # millibar
hoyde_meter = 8848
hoyde_km = hoyde_meter / 1000
vekstfaktor = 1 - 0.12

trykk = trykk_havniva * pow(vekstfaktor, hoyde_km)

print("Høyde i kilometer =", hoyde_km)
print("Vekstfaktor =", vekstfaktor)
print("Lufttrykk på toppen ≈", round(trykk, 1), "millibar")
Fasit: Omtrent \(327\) millibar

Hovedgruppe 2 — oppgaver med forklaring og begrunnelse

Hovedgruppe 2 · Oppgave 3Geometri · Pytagoras og eksakt verdi

Oppgave 3

Oppgave:

I et kvadrat er diagonalen én enhet lengre enn sidekanten.

Beregn den eksakte lengden til sidekantene i kvadratet. Vis utregning.

Vis løsning

Hva spør oppgaven om? Vi skal finne sidelengden i et kvadrat når diagonalen er én enhet lengre enn siden.

Steg 1 — Sett navn på sidelengden

La sidekanten være \(x\). Da er diagonalen \(x+1\).

Steg 2 — Bruk Pytagoras i kvadratet

Diagonalen er hypotenusen i en rettvinklet trekant med kateter \(x\) og \(x\):

\[x^2+x^2=\left(x+1\right)^2\]

Steg 3 — Utvid og samle ledd

\[2x^2=x^2+2x+1\]

\[x^2-2x-1=0\]

Steg 4 — Løs andregradslikningen

\[x=\dfrac{2\pm\sqrt{\left(-2\right)^2-4\cdot1\cdot\left(-1\right)}}{2}\]

\[x=\dfrac{2\pm\sqrt{8}}{2}=1\pm\sqrt{2}\]

Steg 5 — Velg positiv lengde

Siden en lengde ikke kan være negativ, får vi

\[x=1+\sqrt{2}\]

Tolkning

Sidekanten er \(1+\sqrt{2}\), og diagonalen er \(2+\sqrt{2}\).

Vanlig feil: Å skrive \(x^2+\left(x+1\right)^2=x^2\). Diagonalen er hypotenusen og må stå alene på høyre side.

Kontroll (GeoGebra CAS / Python)

GeoGebra · CAS
1
Løs(2x^2 = (x + 1)^2)
\(x=1-\sqrt{2}\lor x=1+\sqrt{2}\)

Python

from sympy import symbols, Eq, solve, sqrt

x = symbols('x')
likning = Eq(2*x**2, (x + 1)**2)
losninger = solve(likning, x)
positive_losninger = [s for s in losninger if s.evalf() > 0]

print("Likning:", likning)
print("Alle løsninger:", losninger)
print("Gyldig sidelengde:", positive_losninger[0])
print("Desimalverdi ≈", positive_losninger[0].evalf(4))
Fasit: Sidekanten er \(1+\sqrt{2}\)
Hovedgruppe 2 · Oppgave 4aProgrammering · nullpunkter

Oppgave 4a

Oppgave:

Monica har laget programmet nedenfor. Hun har lagt inn kommentarer som viser hva programmet vil gjøre i linje 1, linje 3 og 4, i linje 6 og 7 og i linje 9.

Python

from numpy import linspace

def f(x):
    return x**2 - 2

X = linspace(-2, 2, 400)
Y = f(X)

for i in range(0, 399):
    if Y[i] * Y[i + 1] <= 0:
        print("Jeg har funnet et nullpunkt.")

a) Forklar hva resultatet vil bli når Monica kjører programmet. Begrunn hvorfor resultatet vil bli slik.

Vis løsning

Hva spør oppgaven om? Vi skal forstå programmet matematisk og forklare hva utskriften blir.

Steg 1 — Se hvilken funksjon programmet undersøker

Programmet definerer funksjonen

\[f\left(x\right)=x^2-2\]

Nullpunktene er løsningene av \(x^2-2=0\).

Steg 2 — Finn de egentlige nullpunktene

\[x^2-2=0\]

\[x=\pm\sqrt{2}\]

Begge ligger i intervallet \([-2,2]\).

Steg 3 — Forklar hva løkken tester

Programmet sjekker produktet \(Y[i]\cdot Y[i+1]\). Hvis produktet er mindre enn eller lik null, har funksjonsverdiene motsatt fortegn eller en av dem er null.

Steg 4 — Begrunn utskriften

Siden grafen krysser \(x\)-aksen ved \(-\sqrt{2}\) og \(\sqrt{2}\), vil programmet finne to intervaller der fortegnet skifter.

Tolkning

Programmet skriver teksten «Jeg har funnet et nullpunkt.» to ganger.

Vanlig feil: Å tro at programmet skriver selve nullpunktet. Det gjør det ikke; det skriver bare en melding.

Kontroll (Python)

Python

from numpy import linspace

def f(x):
    return x**2 - 2

X = linspace(-2, 2, 400)
Y = f(X)

antall = 0
for i in range(0, 399):
    if Y[i] * Y[i + 1] <= 0:
        antall += 1
        print("Jeg har funnet et nullpunkt.")

print("Antall meldinger:", antall)
Fasit: Programmet skriver meldingen to ganger.
Hovedgruppe 2 · Oppgave 4bProgrammering · numerisk metode

Oppgave 4b

Oppgave:

b) Utvid programmet slik at det skriver ut tilnærmede verdier for eventuelle nullpunkter.

Vis løsning

Hva spør oppgaven om? Vi skal gjøre programmet mer informativt, slik at det ikke bare sier at et nullpunkt finnes, men også skriver en tilnærmet \(x\)-verdi.

Steg 1 — Bruk fortegnsskifte som før

Vi beholder testen \(Y[i]\cdot Y[i+1]\le 0\). Den fanger opp at grafen passerer \(x\)-aksen mellom to naboverdier.

Steg 2 — Bruk midtpunktet i intervallet

Hvis nullpunktet ligger mellom \(X[i]\) og \(X[i+1]\), kan vi bruke

\[x\approx \dfrac{X[i]+X[i+1]}{2}\]

Steg 3 — Skriv ut verdien

Vi legger inn en utskrift som viser den omtrentlige \(x\)-verdien.

Tolkning

Programmet vil skrive ut to verdier nær \(-1{,}414\) og \(1{,}414\).

Vanlig feil: Å skrive ut \(Y[i]\) i stedet for \(X[i]\). Nullpunktet er en \(x\)-verdi.

Utvidet Python-program

Python

from numpy import linspace

def f(x):
    return x**2 - 2

X = linspace(-2, 2, 400)
Y = f(X)

for i in range(0, len(X) - 1):
    if Y[i] * Y[i + 1] <= 0:
        venstre = X[i]
        hoyre = X[i + 1]
        nullpunkt = (venstre + hoyre) / 2
        print("Nullpunkt mellom", round(venstre, 4), "og", round(hoyre, 4))
        print("Tilnærmet nullpunkt:", round(nullpunkt, 4))

print("Eksakte nullpunkter er -sqrt(2) og sqrt(2).")
Fasit: Tilnærmet \(x\approx -1{,}414\) og \(x\approx 1{,}414\).
Hovedgruppe 2 · Oppgave 5aFunksjoner · stigningstall

Oppgave 5a

Oppgave:

Grafen viser temperaturen ved Lindesnes fyr \(x\) timer etter midnatt et døgn i januar.

Stigningstallet til den rette linja som går gjennom punktene \(\left(4,4{,}7\right)\) og \(\left(14,k\right)\), er \(0{,}26\).

a) Gi en praktisk tolking av dette stigningstallet.

Vis løsning

Hva spør oppgaven om? Vi skal tolke stigningstall i en praktisk sammenheng.

Steg 1 — Tolk variablene

Her er \(x\) tid etter midnatt, målt i timer, og \(y\) temperatur, målt i grader celsius.

Steg 2 — Tolk stigningstallet

Stigningstallet \(0{,}26\) betyr at temperaturen øker med \(0{,}26\) grader for hver time langs den rette linja.

Steg 3 — Knytt det til intervallet

Dette gjelder gjennomsnittlig temperaturendring fra \(x=4\) til \(x=14\), ikke nødvendigvis hvert eneste tidspunkt i virkeligheten.

Tolkning

I perioden fra 4 timer til 14 timer etter midnatt øker temperaturen i gjennomsnitt med \(0{,}26\,^{\circ}\text{C}\) per time.

Vanlig feil: Å tolke \(0{,}26\) som temperaturen. Det er temperaturendring per time.
Fasit: Temperaturen øker i gjennomsnitt med \(0{,}26\,^{\circ}\text{C}\) per time.
Hovedgruppe 2 · Oppgave 5bFunksjoner · lineær vekst

Oppgave 5b

Oppgave:

b) Bestem \(k\). Vis utregning.

Vis løsning

Hva spør oppgaven om? Vi skal finne temperaturen \(k\) ved \(x=14\), når stigningstallet mellom \(\left(4,4{,}7\right)\) og \(\left(14,k\right)\) er \(0{,}26\).

Steg 1 — Bruk formelen for stigningstall

\[a=\dfrac{y_2-y_1}{x_2-x_1}\]

Her er \(a=0{,}26\), \(\left(x_1,y_1\right)=\left(4,4{,}7\right)\) og \(\left(x_2,y_2\right)=\left(14,k\right)\).

Steg 2 — Sett inn verdiene

\[0{,}26=\dfrac{k-4{,}7}{14-4}\]

Steg 3 — Regn ut nevneren

\[0{,}26=\dfrac{k-4{,}7}{10}\]

Steg 4 — Løs for \(k\)

\[k-4{,}7=2{,}6\]

\[k=7{,}3\]

Tolkning

Temperaturen 14 timer etter midnatt er \(7{,}3\,^{\circ}\text{C}\).

Vanlig feil: Å bruke \(14\) som tidsforskjell. Tidsforskjellen er \(14-4=10\) timer.

Kontroll (GeoGebra CAS / Python)

GeoGebra · CAS
1
Løs(0.26 = (k - 4.7) / (14 - 4), k)
\(k=7.3\)

Python

from sympy import symbols, Eq, solve

k = symbols('k')
stigningstall = 0.26
likning = Eq(stigningstall, (k - 4.7) / (14 - 4))
losning = solve(likning, k)[0]

print("Likning:", likning)
print("k =", losning)
print("Temperaturen ved x = 14 er", float(losning), "grader celsius")
Fasit: \(k=7{,}3\)
Hovedgruppe 2 · Oppgave 6Derivasjon · tangenter

Oppgave 6

Oppgave:

Figuren viser grafen til tredjegradsfunksjonen \(f\). Figuren viser også tangentene til grafen i tre ulike punkter.

Bruk tangentene til å bestemme et uttrykk for den deriverte funksjonen \(f\prime\).

Av figuren leser vi at tangentene har stigningstall \(0\) i \(x=-1\), \(-3\) i \(x=0\) og \(4\) i \(x=2\).

Vis løsning

Hva spør oppgaven om? Vi skal bruke informasjon om tangentstigningstall til å bestemme \(f\prime\). Når \(f\) er en tredjegradsfunksjon, er \(f\prime\) en andregradsfunksjon.

Steg 1 — Sett opp generell form

Siden \(f\) er en tredjegradsfunksjon, kan vi skrive

\[f\prime\left(x\right)=ax^2+bx+c\]

Steg 2 — Bruk stigningstallene fra tangentene

Fra figuren får vi

\[f\prime\left(-1\right)=0,\quad f\prime\left(0\right)=-3,\quad f\prime\left(2\right)=4\]

Steg 3 — Lag tre likninger

\[a-b+c=0\]

\[c=-3\]

\[4a+2b+c=4\]

Steg 4 — Sett inn \(c=-3\)

\[a-b-3=0\quad\Rightarrow\quad a-b=3\]

\[4a+2b-3=4\quad\Rightarrow\quad 4a+2b=7\]

Steg 5 — Løs systemet

Fra \(a-b=3\) får vi \(b=a-3\). Sett inn:

\[4a+2\left(a-3\right)=7\]

\[6a=13\quad\Rightarrow\quad a=\dfrac{13}{6}\]

\[b=\dfrac{13}{6}-3=-\dfrac{5}{6}\]

Tolkning

Den deriverte blir

\[f\prime\left(x\right)=\dfrac{13}{6}x^2-\dfrac{5}{6}x-3\]

Vanlig feil: Å bruke punktkoordinatene på grafen som funksjonsverdier for \(f\prime\). Det er stigningstallene til tangentene som er verdiene til \(f\prime\).

Kontroll (GeoGebra CAS / Python)

GeoGebra · CAS
1
Løs({a - b + c = 0, c = -3, 4a + 2b + c = 4}, {a, b, c})
\(a=\dfrac{13}{6}, b=-\dfrac{5}{6}, c=-3\)

Python

from sympy import symbols, Eq, solve, Rational

a, b, c, x = symbols('a b c x')
fp = a*x**2 + b*x + c

likninger = [
    Eq(fp.subs(x, -1), 0),
    Eq(fp.subs(x, 0), -3),
    Eq(fp.subs(x, 2), 4),
]

losning = solve(likninger, (a, b, c), dict=True)[0]
fp_bestemt = fp.subs(losning)

print("Løsning for koeffisientene:", losning)
print("f'(x) =", fp_bestemt)
print("Kontroll f'(-1), f'(0), f'(2) =", [fp_bestemt.subs(x, v) for v in [-1, 0, 2]])
Fasit: \(f\prime\left(x\right)=\dfrac{13}{6}x^2-\dfrac{5}{6}x-3\)
Hovedgruppe 2 · Oppgave 7aAlgebra · restteoremet

Oppgave 7a

Oppgave:

a) Gjør rede for hvordan du kan avgjøre om polynomet \(2x^3+5x^2-11x+4\) er delelig med \(\left(2x-1\right)\), uten å utføre divisjonen.

Vis løsning

Hva spør oppgaven om? Vi skal bruke faktor-/restteoremet i stedet for polynomdivisjon.

Steg 1 — Finn nullpunktet til faktoren

Hvis \(2x-1=0\), får vi

\[x=\dfrac{1}{2}\]

Steg 2 — Bruk restteoremet

Polynomet er delelig med \(2x-1\) dersom polynomverdien er \(0\) når \(x=\dfrac{1}{2}\).

Steg 3 — Regn verdien

\[P\left(\dfrac{1}{2}\right)=2\left(\dfrac{1}{2}\right)^3+5\left(\dfrac{1}{2}\right)^2-11\left(\dfrac{1}{2}\right)+4\]

\[=\dfrac{1}{4}+\dfrac{5}{4}-\dfrac{11}{2}+4=0\]

Tolkning

Siden resten er \(0\), er polynomet delelig med \(2x-1\).

Vanlig feil: Å teste \(x=1\) fordi faktoren inneholder \(1\). Riktig testverdi er \(x=\dfrac{1}{2}\).

Kontroll (GeoGebra CAS / Python)

GeoGebra · CAS
1
P(x) := 2x^3 + 5x^2 - 11x + 4
\(P(x)=2x^3+5x^2-11x+4\)
2
P(1/2)
\(0\)

Python

from sympy import symbols, Rational, expand

x = symbols('x')
P = 2*x**3 + 5*x**2 - 11*x + 4
testverdi = Rational(1, 2)
rest = P.subs(x, testverdi)

print("P(x) =", P)
print("Testverdi fra 2x - 1 = 0:", testverdi)
print("P(1/2) =", rest)
print("Delelig med 2x - 1:", rest == 0)
Fasit: Polynomet er delelig med \(2x-1\).
Hovedgruppe 2 · Oppgave 7bAlgebra · polynomdivisjon

Oppgave 7b

Oppgave:

b) Robina har utført følgende divisjon:

\[\left(2x^3+5x^2-11x+4\right):\left(2x-1\right)=x^2+2x-4\]

Vurder besvarelsen til Robina.

Vis løsning

Hva spør oppgaven om? Vi skal kontrollere om kvotienten Robina har funnet, er korrekt.

Steg 1 — Bruk multiplikasjon som kontroll

Hvis divisjonen er riktig, skal

\[\left(2x-1\right)\left(x^2+2x-4\right)=2x^3+5x^2-11x+4\]

Steg 2 — Multipliser ut

\[\left(2x-1\right)\left(x^2+2x-4\right)\]

\[=2x^3+4x^2-8x-x^2-2x+4\]

Steg 3 — Trekk sammen

\[=2x^3+3x^2-10x+4\]

Steg 4 — Sammenlign med polynomet

Dette er ikke lik \(2x^3+5x^2-11x+4\). Derfor kan ikke kvotienten være riktig.

Steg 5 — Finn riktig kvotient

Faktoriserer vi polynomet, får vi

\[2x^3+5x^2-11x+4=\left(2x-1\right)\left(x+4\right)\left(x-1\right)\]

Da er riktig kvotient

\[\left(x+4\right)\left(x-1\right)=x^2+3x-4\]

Tolkning

Robina har vist at resten blir null i oppsettet, men kvotienten hun skriver er feil.

Vanlig feil: Å bare se på resten og glemme å kontrollere at kvotienten faktisk gir tilbake hele polynomet.

Kontroll (GeoGebra CAS / Python)

GeoGebra · CAS
1
Utvid((2x - 1)(x^2 + 2x - 4))
\(2x^3+3x^2-10x+4\)
2
Divisjon(2x^3 + 5x^2 - 11x + 4, 2x - 1)
\(x^2+3x-4\)

Python

from sympy import symbols, expand, div

x = symbols('x')
P = 2*x**3 + 5*x**2 - 11*x + 4
faktor = 2*x - 1
robina_kvotient = x**2 + 2*x - 4

kontroll = expand(faktor * robina_kvotient)
riktig_kvotient, rest = div(P, faktor)

print("Robinas kontrollprodukt:", kontroll)
print("Opprinnelig polynom:", P)
print("Robinas kvotient er riktig:", kontroll == P)
print("Riktig kvotient:", riktig_kvotient)
print("Rest:", rest)
Fasit: Robinas kvotient er feil. Riktig kvotient er \(x^2+3x-4\).
Hovedgruppe 2 · Oppgave 7cAlgebra · graf og faktorisering

Oppgave 7c

Oppgave:

c) Robina mener at divisjonen hun har utført, viser at polynomet kan faktoriseres slik:

\[2x^3+5x^2-11x+4=\left(2x-1\right)\left(x+2\right)\left(x-2\right)\]

Grete viser Robina en skisse av grafen til polynomet.

Hvordan kan Grete ut fra denne skissen vurdere faktoriseringen som Robina har gjort?

Vis løsning

Hva spør oppgaven om? Vi skal bruke grafisk informasjon om nullpunkter til å vurdere en faktorisering.

Steg 1 — Finn nullpunktene som Robinas faktorisering ville gitt

Hvis

\[P\left(x\right)=\left(2x-1\right)\left(x+2\right)\left(x-2\right)\]

ville nullpunktene vært

\[x=\dfrac{1}{2},\quad x=-2,\quad x=2\]

Steg 2 — Les grafskissen

Grafskissen viser at grafen skjærer \(x\)-aksen omtrent ved \(x=\dfrac{1}{2}\) og \(x=-4\), og at den tangerer \(x\)-aksen ved \(x=1\).

Steg 3 — Sammenlign med faktoriseringen

Robinas faktorisering gir nullpunktene \(-2\), \(\dfrac{1}{2}\) og \(2\). Det stemmer ikke med skissen.

Steg 4 — Riktig faktorstruktur

Den riktige faktoriseringen er

\[2x^3+5x^2-11x+4=\left(2x-1\right)\left(x+4\right)\left(x-1\right)\]

Tolkning

Grete kan bruke nullpunktene i grafen til å se at Robinas faktorisering ikke passer.

Vanlig feil: Å vurdere faktorisering bare ut fra utseendet på grafen. Man må knytte faktorene til nullpunktene.

Kontroll (Python)

Python

from sympy import symbols, factor, solve

x = symbols('x')
P = 2*x**3 + 5*x**2 - 11*x + 4
robina = (2*x - 1)*(x + 2)*(x - 2)

print("Riktig faktorisering:", factor(P))
print("Nullpunkter for P:", solve(P, x))
print("Robinas produkt utvidet:", robina.expand())
print("Robinas faktorisering er riktig:", robina.expand() == P)
Fasit: Robinas faktorisering stemmer ikke med grafens nullpunkter.
Hovedgruppe 2 · Oppgave 8aTrigonometri · parallelle linjer

Oppgave 8a

Oppgave:

Punktene \(A\), \(B\) og \(C\) ligger på de to parallelle linjene \(m\) og \(n\).

\(AB=7\), \(AC=5\) og avstanden mellom de parallelle linjene er 4.

a) Forklar at \(\sin v=\sin \angle BAC\).

Vis løsning

Hva spør oppgaven om? Vi skal forklare en trigonometrisk sammenheng i figuren.

Steg 1 — Se på vinklene

Linjen gjennom \(A\) og \(B\) ligger på den ene parallelle linjen. Den øverste linjen er parallell med denne.

Steg 2 — Bruk parallelle linjer

Vinkelen \(v\) er vinkelen mellom \(AC\) og en linje som er parallell med \(AB\). Derfor er \(v\) og \(\angle BAC\) enten like vinkler eller supplementvinkler.

Steg 3 — Bruk sinus til supplementvinkler

For vinkler som summerer til \(180^{\circ}\), gjelder

\[\sin\left(180^{\circ}-u\right)=\sin u\]

Tolkning

Dermed får vi \(\sin v=\sin \angle BAC\).

Vanlig feil: Å tro at vinklene må være identiske. For sinus holder det også at de er supplementvinkler.
Fasit: \(\sin v=\sin \angle BAC\) fordi vinklene er like eller supplementære.
Hovedgruppe 2 · Oppgave 8bTrigonometri · arealsetningen

Oppgave 8b

Oppgave:

b) Beregn arealet av \(\triangle ABC\)

  • uten å bruke arealsetningen
  • ved å bruke arealsetningen
Vis løsning

Hva spør oppgaven om? Vi skal beregne samme areal på to måter.

Steg 1 — Bruk grunnlinje og høyde

Velg \(AB\) som grunnlinje. Da er grunnlinjen \(7\), og høyden er avstanden mellom de parallelle linjene, altså \(4\).

Steg 2 — Regn arealet uten arealsetningen

\[A=\dfrac{g\cdot h}{2}=\dfrac{7\cdot 4}{2}=14\]

Steg 3 — Finn sinusverdien

I trekanten med side \(AC=5\) og høyde \(4\), får vi

\[\sin \angle BAC=\dfrac{4}{5}\]

Steg 4 — Bruk arealsetningen

Arealsetningen gir

\[A=\dfrac{1}{2}\cdot AB\cdot AC\cdot \sin \angle BAC\]

\[A=\dfrac{1}{2}\cdot 7\cdot 5\cdot \dfrac{4}{5}=14\]

Tolkning

Begge metodene gir samme areal, \(14\).

Vanlig feil: Å bruke \(AC=5\) som høyde. Høyden er den vinkelrette avstanden mellom de parallelle linjene, altså \(4\).

Kontroll (GeoGebra CAS / Python)

GeoGebra · CAS
1
7 * 4 / 2
\(14\)
2
1/2 * 7 * 5 * (4/5)
\(14\)

Python

from fractions import Fraction

grunnlinje = 7
hoyde = 4
AC = 5
sin_A = Fraction(hoyde, AC)

areal_med_hoyde = Fraction(grunnlinje * hoyde, 2)
areal_med_arealsetningen = Fraction(1, 2) * grunnlinje * AC * sin_A

print("sin(angle BAC) =", sin_A)
print("Areal uten arealsetningen =", areal_med_hoyde)
print("Areal med arealsetningen =", areal_med_arealsetningen)
print("Samme areal:", areal_med_hoyde == areal_med_arealsetningen)
Fasit: Arealet er \(14\).
Hovedgruppe 3 · Oppgave 9aUtforsking · algoritme

Oppgave 9a

Oppgave:

Hanne er kunstner og arbeider med rektangler i ulike størrelser. Lengdene til sidene i rektanglene er hele tall.

Hun vil dekke et rektangel med små røde kvadrater. Kvadratene skal ligge tett inntil hverandre, og alle skal være like store. Hanne vil lage en algoritme som hun kan bruke for å finne ut hvor store kvadratene maksimalt kan være.

Hun har laget noen figurer som skal vise hvordan hun tenker.

a) Lag en algoritme som beskriver måten Hanne vil løse problemet på.

Vis løsning

Hva spør oppgaven om? Vi skal beskrive en generell algoritme for å finne størst mulig kvadrat som kan dekke et rektangel uten overlapp og uten hull.

Steg 1 — Knytt problemet til divisjon

Hvis rektangelet har sidelengder \(a\) og \(b\), må kvadratets side \(s\) gå opp i både \(a\) og \(b\).

Steg 2 — Finn størst mulig felles divisor

Størst mulig kvadrat får vi når \(s\) er største felles divisor av \(a\) og \(b\):

\[s=\operatorname{SFD}\left(a,b\right)\]

Steg 3 — Beskriv algoritmen med Euklids algoritme

Start med tallene \(a\) og \(b\). Del det største tallet på det minste og finn resten. Bytt ut det største tallet med resten. Fortsett til resten er \(0\). Det siste tallet som ikke er \(0\), er \(s\).

Steg 4 — Hvorfor algoritmen virker

Resten representerer den delen av rektangelet som ikke er dekket av størst mulig kandidat. Euklids algoritme bevarer felles divisorene hele veien.

Tolkning

Algoritmen finner den største kvadratstørrelsen som passer nøyaktig langs begge sidene.

Vanlig feil: Å velge det minste sidetallet som kvadratets side. Det fungerer bare hvis det minste tallet går opp i det største.
Fasit: Bruk Euklids algoritme til å finne \(\operatorname{SFD}\left(a,b\right)\).

Hovedgruppe 3 — utforsking, problemløsing og modellering

Hovedgruppe 3 · Oppgave 9bProgrammering · Euklids algoritme

Oppgave 9b

Oppgave:

b) Bruk programmering til å lage et dataprogram med utgangspunkt i algoritmen.

Når Hanne forteller programmet hvor lange sidene i rektangelet er, skal programmet bestemme hvor store sidekantene i kvadratene maksimalt kan være.

Vis løsning

Hva spør oppgaven om? Vi skal skrive et program som implementerer algoritmen fra del a.

Steg 1 — Les inn sidelengdene

Programmet trenger to heltall: lengden og bredden i rektangelet.

Steg 2 — Bruk Euklids algoritme

Så lenge den minste resten ikke er \(0\), erstatter vi tallene med \(b\) og \(a\bmod b\).

Steg 3 — Skriv ut svaret

Når resten er \(0\), er tallet som står igjen, maksimal sidelengde i kvadratene.

Tolkning

Programmet gir størrelsen på kvadrater som dekker hele rektangelet uten hull.

Vanlig feil: Å bruke desimaltall. Sidene i oppgaven er hele tall, og algoritmen arbeider med heltallsrester.

Python-program

Python

def storste_felles_divisor(a, b):
    """Returnerer største felles divisor ved Euklids algoritme."""
    a = abs(int(a))
    b = abs(int(b))

    while b != 0:
        rest = a % b
        print(f"{a} = {a // b} * {b} + {rest}")
        a, b = b, rest

    return a

# Eksempel: et rektangel med sider 54 og 24
lengde = 54
bredde = 24
side_kvadrat = storste_felles_divisor(lengde, bredde)

print("Lengde:", lengde)
print("Bredde:", bredde)
print("Største mulige sidekant i kvadratene:", side_kvadrat)
Fasit: Programmet beregner \(\operatorname{SFD}\left(a,b\right)\), altså maksimal kvadratside.
Hovedgruppe 3 · Oppgave 10Funksjonsanalyse · rasjonal funksjon

Oppgave 10

Oppgave:

Funksjonen \(f\) er gitt ved

\[f\left(x\right)=\dfrac{a\left(x-1\right)\left(x+b\right)}{x^2-1}\]

Utforsk og beskriv egenskapene til \(f\) når \(a\) og \(b\) er reelle tall.

Vis løsning

Hva spør oppgaven om? Dette er en utforskende oppgave. Vi skal beskrive hvordan parametrene \(a\) og \(b\) påvirker funksjonen, og samtidig passe på definisjonsmengden.

Steg 1 — Faktoriser nevneren

\[x^2-1=\left(x-1\right)\left(x+1\right)\]

Funksjonen er derfor

\[f\left(x\right)=\dfrac{a\left(x-1\right)\left(x+b\right)}{\left(x-1\right)\left(x+1\right)}\]

Steg 2 — Finn definisjonsmengden

Nevneren kan ikke være \(0\). Derfor må

\[x\ne 1\quad \text{og}\quad x\ne -1\]

Steg 3 — Forkort uttrykket for \(x\ne 1\)

For \(x\ne 1\) kan vi forkorte faktoren \(x-1\):

\[f\left(x\right)=\dfrac{a\left(x+b\right)}{x+1}\]

Men \(x=1\) er fortsatt ikke med i definisjonsmengden.

Steg 4 — Hull i grafen ved \(x=1\)

Hvis vi setter \(x=1\) inn i det forkortede uttrykket, får vi høyden til hullet:

\[y=\dfrac{a\left(1+b\right)}{2}\]

Grafen har derfor vanligvis et hull i punktet

\[\left(1,\dfrac{a\left(1+b\right)}{2}\right)\]

Steg 5 — Vertikal asymptote ved \(x=-1\)

Vanligvis har funksjonen en vertikal asymptote ved \(x=-1\), fordi nevneren \(x+1\) blir \(0\).

Unntaket er når \(b=1\), fordi \(x+b=x+1\) da også kan forkortes.

Steg 6 — Horisontal asymptote

For store \(x\)-verdier oppfører

\[\dfrac{a\left(x+b\right)}{x+1}\]

seg omtrent som \(a\). Derfor er horisontal asymptote

\[y=a\]

Steg 7 — Nullpunkt

Hvis \(a\ne 0\), får vi nullpunkt fra \(x+b=0\), altså

\[x=-b\]

Dette nullpunktet må vurderes mot punktene som ikke er definert.

Tolkning

Parameteren \(a\) styrer blant annet horisontal asymptote og vertikal skalering. Parameteren \(b\) flytter nullpunktet og kan endre om asymptoten ved \(x=-1\) forsvinner.

Vanlig feil: Å forkorte \(x-1\) og deretter glemme at \(x=1\) fortsatt ikke er lovlig.

Kontroll (GeoGebra CAS / Python)

GeoGebra · CAS
1
Faktoriser(x^2 - 1)
\(\left(x-1\right)\left(x+1\right)\)
2
Forenkle(a (x - 1)(x + b)/(x^2 - 1))
\(\dfrac{a\left(x+b\right)}{x+1}\), \(x\ne 1\)

Python

from sympy import symbols, factor, cancel, limit, oo

x, a, b = symbols('x a b')
f = a*(x - 1)*(x + b)/(x**2 - 1)
f_forkortet = cancel(f)

print("Opprinnelig funksjon:", f)
print("Faktorisert nevner:", factor(x**2 - 1))
print("Forkortet uttrykk:", f_forkortet)
print("Definisjonsmengde: x != 1 og x != -1")
print("Hullverdi ved x = 1:", f_forkortet.subs(x, 1))
print("Grense når x går mot uendelig:", limit(f_forkortet, x, oo))
print("Grense når x går mot -uendelig:", limit(f_forkortet, x, -oo))
print("Merk: x = -1 må undersøkes særskilt, særlig når b = 1.")
Fasit: \(x\ne \pm 1\), forkortet uttrykk \(\dfrac{a\left(x+b\right)}{x+1}\), hull ved \(x=1\), vanligvis asymptote \(x=-1\) og horisontal asymptote \(y=a\).

Teknisk kontroll før publisering