R1 eksamenHøst 2019

Matematikk R1 eksamen – høst 2019

ifingo
Norsk (Bokmål)

ifingo · Matematikk R1

Matematikk R1 - høsten 2019 (REA3022)

Løsningsforslag til eksamenssettet fra Utdanningsdirektoratet.

Del 1 - uten hjelpemidler

Del 1 - Oppgave 1aDerivasjon av potens og logaritme

Oppgave 1a

Oppgave: Deriver funksjonen \[f(x)=x^4-2x+\ln x.\]
Vis løsning

Hva spør oppgaven om? Vi deriverer ledd for ledd og tar med at logaritmen krever \(x>0\).

Steg 1 - Deriver fjerdegradsleddet

Potensregelen gir \((x^4)^{\prime}=4x^3\).

Steg 2 - Deriver det lineære leddet

\((-2x)^{\prime}=-2\).

Steg 3 - Deriver logaritmen

\((\ln x)^{\prime}=1/x\).

Steg 4 - Samle uttrykket

\[f^{\prime}(x)=4x^3-2+\frac1x.\]

Steg 5 - Oppgi området

Den opprinnelige funksjonen og den deriverte er definert for \(x>0\).

Steg 6 - Kontroller

Et direkte CAS-uttrykk gir samme resultat.

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
Derivative[x^4-2x+ln(x),x]
\(4x^3-2+1/x\)

Tolkning: GeoGebra deriverer hvert ledd og beholder definisjonskravet x > 0.

Python-kontroll med SymPy

Python 3 - SymPy
import sympy as sp
x = sp.symbols("x", positive=True)
f = x**4 - 2*x + sp.log(x)
f_prime = sp.diff(f, x)
expected = 4*x**3 - 2 + 1/x
print("f(x) =", f)
print("f'(x) =", f_prime)
print("Expected =", expected)
print("Difference =", sp.simplify(f_prime-expected))
print("Domain condition: x > 0")
Utskrift fra Python:
f(x) = x**4 - 2*x + log(x)
f'(x) = 4*x**3 - 2 + 1/x
Expected = 4*x**3 - 2 + 1/x
Difference = 0
Domain condition: x > 0

Fasit: \(f^{\prime}(x)=4x^3-2+\dfrac1x\), for \(x>0\).

Vanlig feil: Å skrive den deriverte av \(\ln x\) som \(\ln x\) eller glemme definisjonsmengden.
Sensorpunkt: Korrekt leddvis derivasjon og \(x>0\) skal være synlig.
Del 1 - Oppgave 1bProduktregel

Oppgave 1b

Oppgave: Deriver funksjonen \[g(x)=x^7e^x.\]
Vis løsning

Hva spør oppgaven om? Funksjonen er et produkt av \(x^7\) og \(e^x\), så produktregelen brukes.

Steg 1 - Velg faktorene

Sett \(u=x^7\) og \(v=e^x\).

Steg 2 - Deriver faktorene

\(u^{\prime}=7x^6\) og \(v^{\prime}=e^x\).

Steg 3 - Bruk produktregelen

\[g^{\prime}=u^{\prime}v+uv^{\prime}.\]

Steg 4 - Sett inn

\[g^{\prime}(x)=7x^6e^x+x^7e^x.\]

Steg 5 - Faktoriser

\[g^{\prime}(x)=x^6e^x(x+7).\]

Steg 6 - Kontroller

Den utvidede og faktoriserte formen er identiske.

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
Derivative[x^7 exp(x),x]
\(x^6e^x(x+7)\)

Tolkning: CAS bruker produktregelen og faktoriserer resultatet.

Python-kontroll med SymPy

Python 3 - SymPy
import sympy as sp
x = sp.symbols("x", real=True)
u = x**7
v = sp.exp(x)
product_rule = sp.diff(u,x)*v + u*sp.diff(v,x)
factored = sp.factor(product_rule)
print("u'(x) =", sp.diff(u,x))
print("v'(x) =", sp.diff(v,x))
print("Expanded derivative =", sp.expand(product_rule))
print("Factored derivative =", factored)
print("Check =", sp.simplify(factored-sp.diff(u*v,x)))
Utskrift fra Python:
u'(x) = 7*x**6
v'(x) = exp(x)
Expanded derivative = x**7*exp(x) + 7*x**6*exp(x)
Factored derivative = x**6*(x + 7)*exp(x)
Check = 0

Fasit: \(g^{\prime}(x)=x^6e^x(x+7)\).

Vanlig feil: Å derivere bare én av faktorene.
Sensorpunkt: Produktregelen må framgå, og svaret kan stå utvidet eller faktorisert.
Del 1 - Oppgave 1cKvotientregel og kjerneregel

Oppgave 1c

Oppgave: Deriver funksjonen \[h(x)=\frac{\ln(2x)}{x^2}.\]
Vis løsning

Hva spør oppgaven om? Vi skriver brøken som \(\ln(2x)x^{-2}\). Den deriverte av \(\ln(2x)\) er \(1/x\).

Steg 1 - Skriv om

\[h(x)=\ln(2x)x^{-2}.\]

Steg 2 - Deriver logaritmen

Kjerneregelen gir \((\ln(2x))^{\prime}=2/(2x)=1/x\).

Steg 3 - Deriver potensleddet

\((x^{-2})^{\prime}=-2x^{-3}\).

Steg 4 - Bruk produktregelen

\[h^{\prime}=\frac1x x^{-2}+\ln(2x)(-2x^{-3}).\]

Steg 5 - Samle på felles faktor

\[h^{\prime}(x)=x^{-3}(1-2\ln(2x)).\]

Steg 6 - Skriv som brøk

\[h^{\prime}(x)=\frac{1-2\ln(2x)}{x^3},\quad x>0.\]

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
Derivative[ln(2x)/x^2,x]
\((1-2\ln(2x))/x^3\)

Tolkning: Kjerneregelen for logaritmen og produkt-/kvotientregelen gir samme uttrykk.

Python-kontroll med SymPy

Python 3 - SymPy
import sympy as sp
x = sp.symbols("x", positive=True)
h = sp.log(2*x)/x**2
h_prime = sp.simplify(sp.diff(h,x))
expected = (1-2*sp.log(2*x))/x**3
print("h(x) =", h)
print("h'(x) =", h_prime)
print("Expected =", expected)
print("Factored =", sp.factor(h_prime))
print("Difference =", sp.simplify(h_prime-expected))
Utskrift fra Python:
h(x) = log(2*x)/x**2
h'(x) = (1 - log(4*x**2))/x**3
Expected = (1 - 2*log(2*x))/x**3
Factored = -(2*log(x) - 1 + 2*log(2))/x**3
Difference = 0

Fasit: \(h^{\prime}(x)=\dfrac{1-2\ln(2x)}{x^3}\), for \(x>0\).

Vanlig feil: Å få \((\ln(2x))^{\prime}=2/x\); faktoren 2 forkortes.
Sensorpunkt: Både kjerneregelen og korrekt brøkforenkling skal vises.
Del 1 - Oppgave 2Logaritmeregler

Oppgave 2

Oppgave: Skriv så enkelt som mulig \[4\ln(ab^3)-3\ln(ab^2)-\ln\left(\frac ab\right).\]
Vis løsning

Hva spør oppgaven om? Vi utvider hver logaritme og samler koeffisientene til \(\ln a\) og \(\ln b\).

Steg 1 - Utvid første ledd

\(4\ln(ab^3)=4\ln a+12\ln b\).

Steg 2 - Utvid andre ledd

\(-3\ln(ab^2)=-3\ln a-6\ln b\).

Steg 3 - Utvid brøklogaritmen

\(-\ln(a/b)=-\ln a+\ln b\).

Steg 4 - Samle a-leddene

Koeffisienten blir \(4-3-1=0\).

Steg 5 - Samle b-leddene

Koeffisienten blir \(12-6+1=7\).

Steg 6 - Konkluder

Uttrykket er \(7\ln b=\ln(b^7)\), for \(a,b>0\).

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
Expand[4ln(a b^3)-3ln(a b^2)-ln(a/b)]
\(7\ln b\)

Tolkning: Alle ledd med ln(a) kanselleres.

Python-kontroll med SymPy

Python 3 - SymPy
import sympy as sp
A, B = sp.symbols("A B")
expr = 4*(A+3*B)-3*(A+2*B)-(A-B)
expanded = sp.expand(expr)
print("Let A = ln(a), B = ln(b)")
print("Expanded linear expression =", expr)
print("Collected expression =", expanded)
print("Coefficient of A =", sp.expand(expr).coeff(A))
print("Coefficient of B =", sp.expand(expr).coeff(B))
print("Final result = 7*ln(b)")
Utskrift fra Python:
Let A = ln(a), B = ln(b)
Expanded linear expression = 7*B
Collected expression = 7*B
Coefficient of A = 0
Coefficient of B = 7
Final result = 7*ln(b)

Fasit: \(7\ln b\), eventuelt \(\ln(b^7)\).

Vanlig feil: Å glemme at minustegnet foran \(\ln(a/b)\) skifter begge leddene.
Sensorpunkt: Logaritmereglene og kanselleringen av \(\ln a\) skal dokumenteres.
Del 1 - Oppgave 3aPolynomdivisjon og restsetningen

Oppgave 3a

Oppgave: Polynomet er \(P(x)=x^3+6x^2+kx-30\). Begrunn at \(k=-1\) når \(P(x):(x-2)\) går opp.
Vis løsning

Hva spør oppgaven om? Divisjonen går opp akkurat når resten er null. Restsetningen sier at resten er \(P(2)\).

Steg 1 - Bruk restsetningen

Kravet er \(P(2)=0\).

Steg 2 - Sett inn x=2

\[P(2)=2^3+6\cdot2^2+2k-30.\]

Steg 3 - Regn ut konstantleddene

\(8+24-30=2\), så \(P(2)=2+2k\).

Steg 4 - Sett lik null

\[2+2k=0.\]

Steg 5 - Løs

\[k=-1.\]

Steg 6 - Kontroller

Med \(k=-1\) er \(P(2)=0\), så \(x-2\) er en faktor.

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
Solve[2^3+6*2^2+2k-30=0,k]
\(k=-1\)

Tolkning: Resten ved divisjon på x-2 blir null.

Python-kontroll med SymPy

Python 3 - SymPy
import sympy as sp
x, k = sp.symbols("x k", real=True)
P = x**3 + 6*x**2 + k*x - 30
remainder = sp.expand(P.subs(x,2))
solution = sp.solve(sp.Eq(remainder,0),k)
print("P(x) =", P)
print("P(2) =", remainder)
print("Equation =", sp.Eq(remainder,0))
print("k solution =", solution)
print("Check P(2) for k=-1 =", P.subs({x:2,k:-1}))
Utskrift fra Python:
P(x) = k*x + x**3 + 6*x**2 - 30
P(2) = 2*k + 2
Equation = Eq(2*k + 2, 0)
k solution = [-1]
Check P(2) for k=-1 = 0

Fasit: \(k=-1\).

Vanlig feil: Å utføre lang divisjon uten å bruke at resten er \(P(2)\), eller å regne \(6\cdot2^2\) feil.
Sensorpunkt: Restsetningen og kontrollen \(P(2)=0\) skal komme fram.
Del 1 - Oppgave 3bFaktorisering av tredjegradspolynom

Oppgave 3b

Oppgave: Faktoriser \[x^3+6x^2-x-30\] i lineære faktorer.
Vis løsning

Hva spør oppgaven om? Fra forrige del vet vi at \(x-2\) er en faktor. Vi dividerer og faktoriserer andregradsfaktoren.

Steg 1 - Ta ut kjent faktor

\[x^3+6x^2-x-30=(x-2)Q(x).\]

Steg 2 - Divider

Polynomdivisjon gir \(Q(x)=x^2+8x+15\).

Steg 3 - Faktoriser andregradsuttrykket

Vi søker to tall med sum 8 og produkt 15: 3 og 5.

Steg 4 - Skriv faktorene

\[x^2+8x+15=(x+3)(x+5).\]

Steg 5 - Samle

\[x^3+6x^2-x-30=(x-2)(x+3)(x+5).\]

Steg 6 - Kontroller ved utvidelse

Utvidelse gir det opprinnelige polynomet.

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
Factor[x^3+6x^2-x-30]
\((x-2)(x+3)(x+5)\)

Tolkning: CAS finner de tre lineære faktorene.

Python-kontroll med SymPy

Python 3 - SymPy
import sympy as sp
x = sp.symbols("x", real=True)
P = x**3 + 6*x**2 - x - 30
quotient, remainder = sp.div(P, x-2)
factored = sp.factor(P)
print("P(x) =", P)
print("Quotient =", quotient)
print("Remainder =", remainder)
print("Factored =", factored)
print("Expansion check =", sp.expand(factored)-P)
Utskrift fra Python:
P(x) = x**3 + 6*x**2 - x - 30
Quotient = x**2 + 8*x + 15
Remainder = 0
Factored = (x - 2)*(x + 3)*(x + 5)
Expansion check = 0

Fasit: \((x-2)(x+3)(x+5)\).

Vanlig feil: Å stoppe etter \((x-2)(x^2+8x+15)\) når det bes om lineære faktorer.
Sensorpunkt: Alle tre lineære faktorer og en kontroll bør være med.
Del 1 - Oppgave 3cFortegnslinje for polynom

Oppgave 3c

Oppgave: Løs ulikheten \[x^3+6x^2\le x+30.\]
Vis løsning

Hva spør oppgaven om? Vi flytter alt til venstre, bruker faktoriseringen og lager fortegnslinje.

Steg 1 - Flytt alle ledd

\[x^3+6x^2-x-30\le0.\]

Steg 2 - Faktoriser

\[(x-2)(x+3)(x+5)\le0.\]

Steg 3 - Finn nullpunktene

Nullpunktene er \(-5,-3,2\).

Steg 4 - Bestem fortegn

Med positiv ledende koeffisient skifter fortegnet ved hvert enkelt nullpunkt.

Steg 5 - Les av negative områder

Produktet er negativt for \(x<-5\) og for \(-3<x<2\).

Steg 6 - Ta med nullpunktene

Siden ulikheten er \(\le0\), inkluderes alle tre nullpunktene.

Steg 7 - Svar med intervaller

\[x\in(-\infty,-5]\cup[-3,2].\]

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
Solve[(x-2)(x+3)(x+5)<=0,x]
\(x\le-5\) eller \(-3\le x\le2\)

Tolkning: CAS bekrefter intervallene fra fortegnslinjen.

Python-kontroll med SymPy

Python 3 - SymPy
import sympy as sp
x = sp.symbols("x", real=True)
P = (x-2)*(x+3)*(x+5)
roots = sp.solve(sp.Eq(P,0),x)
solution = sp.solve_univariate_inequality(P<=0,x)
test_values = [-6,-4,0,3]
print("Factored polynomial =", P)
print("Roots =", roots)
print("Test signs =", [(v, sp.sign(P.subs(x,v))) for v in test_values])
print("Solution =", solution)
print("Endpoint check =", [P.subs(x,r) for r in roots])
Utskrift fra Python:
Factored polynomial = (x - 2)*(x + 3)*(x + 5)
Roots = [-5, -3, 2]
Test signs = [(-6, -1), (-4, 1), (0, -1), (3, 1)]
Solution = (x <= -5) | ((-3 <= x) & (x <= 2))
Endpoint check = [0, 0, 0]

Fasit: \(x\in(-\infty,-5]\cup[-3,2]\).

Vanlig feil: Å glemme at likhetstegnet gjør intervallendene lukkede.
Sensorpunkt: Faktorisering, fortegn og korrekte åpne/lukkede intervaller skal vises.
Del 1 - Oppgave 4aVektorer fra koordinater

Oppgave 4a

Oppgave: Punktene er \(A(-2,1)\), \(B(2,-1)\), \(C(4,2)\), \(D(t,3)\). Bestem \(\overrightarrow{AB}\) og \(\overrightarrow{BC}\).
Vis løsning

Hva spør oppgaven om? En vektor fra P til Q finnes ved å trekke koordinatene til P fra koordinatene til Q.

Steg 1 - Finn AB

\[\overrightarrow{AB}=B-A=(2-(-2),-1-1).\]

Steg 2 - Regn ut

\[\overrightarrow{AB}=(4,-2).\]

Steg 3 - Finn BC

\[\overrightarrow{BC}=C-B=(4-2,2-(-1)).\]

Steg 4 - Regn ut

\[\overrightarrow{BC}=(2,3).\]

Steg 5 - Kontroller retning

Begge vektorene peker i retning fra første til andre punkt.

Steg 6 - Oppgi svar

\(\overrightarrow{AB}=(4,-2)\) og \(\overrightarrow{BC}=(2,3)\).

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
Vector[A,B]
\((4,-2)\)
2
Vector[B,C]
\((2,3)\)

Tolkning: Koordinatdifferansene gir vektorene.

Python-kontroll med SymPy

Python 3 - SymPy
import sympy as sp
A = sp.Matrix([-2,1])
B = sp.Matrix([2,-1])
C = sp.Matrix([4,2])
AB = B-A
BC = C-B
print("A =", list(A))
print("B =", list(B))
print("C =", list(C))
print("AB =", list(AB))
print("BC =", list(BC))
Utskrift fra Python:
A = [-2, 1]
B = [2, -1]
C = [4, 2]
AB = [4, -2]
BC = [2, 3]

Fasit: \(\overrightarrow{AB}=(4,-2)\), \(\overrightarrow{BC}=(2,3)\).

Vanlig feil: Å regne A-B i stedet for B-A.
Sensorpunkt: Riktig rekkefølge i koordinatdifferansene er avgjørende.
Del 1 - Oppgave 4bOrtogonalitet med skalarprodukt

Oppgave 4b

Oppgave: Avgjør om \(\overrightarrow{AB}\perp\overrightarrow{BC}\).
Vis løsning

Hva spør oppgaven om? To ikke-null vektorer står normalt på hverandre akkurat når skalarproduktet er null.

Steg 1 - Bruk vektorene

\(\overrightarrow{AB}=(4,-2)\), \(\overrightarrow{BC}=(2,3)\).

Steg 2 - Regn skalarproduktet

\[\overrightarrow{AB}\cdot\overrightarrow{BC}=4\cdot2+(-2)\cdot3.\]

Steg 3 - Forenkle

\[8-6=2.\]

Steg 4 - Sammenlikn med null

Skalarproduktet er ikke null.

Steg 5 - Konkluder

Vektorene står derfor ikke normalt på hverandre.

Steg 6 - Geometrisk kontroll

Vinkelen er nær, men ikke lik, \(90^{\circ}\).

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
Dot[Vector[A,B],Vector[B,C]]
\(2\)

Tolkning: Skalarproduktet er forskjellig fra null.

Python-kontroll med SymPy

Python 3 - SymPy
import sympy as sp
AB = sp.Matrix([4,-2])
BC = sp.Matrix([2,3])
dot = AB.dot(BC)
cos_angle = sp.simplify(dot/(sp.sqrt(AB.dot(AB))*sp.sqrt(BC.dot(BC))))
angle = float(sp.acos(cos_angle)*180/sp.pi)
print("AB =", list(AB))
print("BC =", list(BC))
print("Dot product =", dot)
print("cos(angle) =", cos_angle)
print("Angle in degrees =", round(angle,6))
Utskrift fra Python:
AB = [4, -2]
BC = [2, 3]
Dot product = 2
cos(angle) = sqrt(65)/65
Angle in degrees = 82.874984

Fasit: Nei. Skalarproduktet er \(2\), ikke \(0\).

Vanlig feil: Å sammenlikne helningene uten å kontrollere fortegn og gjensidig invers.
Sensorpunkt: Skalarproduktet og konklusjonen må oppgis.
Del 1 - Oppgave 4cParameter og ortogonalitet

Oppgave 4c

Oppgave: Bestem \(t\) slik at \(\overrightarrow{AB}\perp\overrightarrow{AD}\).
Vis løsning

Hva spør oppgaven om? Vi uttrykker \(\overrightarrow{AD}\) ved \(t\) og setter skalarproduktet lik null.

Steg 1 - Finn AD

\[\overrightarrow{AD}=D-A=(t+2,2).\]

Steg 2 - Sett opp skalarproduktet

\[(4,-2)\cdot(t+2,2)=0.\]

Steg 3 - Regn ut

\[4(t+2)-4=0.\]

Steg 4 - Forenkle

\[4t+4=0.\]

Steg 5 - Løs

\[t=-1.\]

Steg 6 - Kontroller

For \(t=-1\) er \(AD=(1,2)\), og \((4,-2)\cdot(1,2)=0\).

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
Solve[Dot[(4,-2),(t+2,2)]=0,t]
\(t=-1\)

Tolkning: CAS løser ortogonalitetsbetingelsen.

Python-kontroll med SymPy

Python 3 - SymPy
import sympy as sp
t = sp.symbols("t", real=True)
AB = sp.Matrix([4,-2])
AD = sp.Matrix([t+2,2])
dot = sp.expand(AB.dot(AD))
solution = sp.solve(sp.Eq(dot,0),t)
print("AB =", list(AB))
print("AD =", list(AD))
print("Dot product =", dot)
print("Solution =", solution)
print("Check at t=-1 =", dot.subs(t,-1))
Utskrift fra Python:
AB = [4, -2]
AD = [t + 2, 2]
Dot product = 4*t + 4
Solution = [-1]
Check at t=-1 = 0

Fasit: \(t=-1\).

Vanlig feil: Å bruke \(D-B\) i stedet for \(D-A\).
Sensorpunkt: Vektoren AD, nullbetingelsen og kontrollen skal være med.
Del 1 - Oppgave 4dParallelle sider i trapes

Oppgave 4d

Oppgave: For hvilke verdier av \(t\) er firkanten \(ABCD\) et trapes?
Vis løsning

Hva spør oppgaven om? Et trapes har minst ett par parallelle motstående sider. Vi undersøker \(AB\parallel CD\) og \(BC\parallel AD\).

Steg 1 - Finn CD

\[\overrightarrow{CD}=D-C=(t-4,1).\]

Steg 2 - Krav for AB parallell CD

Determinanten må være null: \[4\cdot1-(-2)(t-4)=0.\]

Steg 3 - Løs første krav

\[2t-4=0\Rightarrow t=2.\]

Steg 4 - Bruk AD

\(\overrightarrow{AD}=(t+2,2)\).

Steg 5 - Krav for BC parallell AD

\[2\cdot2-3(t+2)=0.\]

Steg 6 - Løs andre krav

\[-3t-2=0\Rightarrow t=-2/3.\]

Steg 7 - Konkluder

Firkanten er et trapes for \(t=2\) eller \(t=-2/3\).

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
Solve[Det[{{4,-2},{t-4,1}}]=0,t]
\(t=2\)
2
Solve[Det[{{2,3},{t+2,2}}]=0,t]
\(t=-2/3\)

Tolkning: Hver løsning gjør ett par motstående sider parallelle.

Python-kontroll med SymPy

Python 3 - SymPy
import sympy as sp
t = sp.symbols("t", real=True)
AB = sp.Matrix([4,-2]); CD = sp.Matrix([t-4,1])
BC = sp.Matrix([2,3]); AD = sp.Matrix([t+2,2])
det1 = sp.det(sp.Matrix.hstack(AB,CD))
det2 = sp.det(sp.Matrix.hstack(BC,AD))
print("det(AB,CD) =", sp.expand(det1))
print("AB parallel CD for t =", sp.solve(sp.Eq(det1,0),t))
print("det(BC,AD) =", sp.expand(det2))
print("BC parallel AD for t =", sp.solve(sp.Eq(det2,0),t))
print("Combined solutions =", [sp.Integer(2),-sp.Rational(2,3)])
Utskrift fra Python:
det(AB,CD) = 2*t - 4
AB parallel CD for t = [2]
det(BC,AD) = -3*t - 2
BC parallel AD for t = [-2/3]
Combined solutions = [2, -2/3]

Fasit: \(t=2\) eller \(t=-\dfrac23\).

Vanlig feil: Å teste nabosider i stedet for motstående sider.
Sensorpunkt: Begge mulige par av motstående sider må undersøkes.
Del 1 - Oppgave 5aKombinatorikk

Oppgave 5a

Oppgave: En komité skal ha 3 av 7 elever fra klasse A og 2 av 5 fra klasse B. Hvor mange komiteer finnes?
Vis løsning

Hva spør oppgaven om? Valgene i de to klassene er uavhengige, så antall kombinasjoner multipliseres.

Steg 1 - Velg fra klasse A

Antallet er \(\binom73=35\).

Steg 2 - Velg fra klasse B

Antallet er \(\binom52=10\).

Steg 3 - Bruk produktregelen

For hvert A-valg finnes 10 B-valg.

Steg 4 - Multipliser

\[35\cdot10=350.\]

Steg 5 - Vurder rekkefølge

Rekkefølgen i en komité spiller ingen rolle, derfor brukes kombinasjoner.

Steg 6 - Svar

Det finnes 350 mulige komiteer.

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
BinomialCoefficient[7,3]*BinomialCoefficient[5,2]
\(350\)

Tolkning: Kombinasjonene fra hver klasse multipliseres.

Python-kontroll med SymPy

Python 3 - SymPy
import math
from fractions import Fraction
choose_A = math.comb(7,3)
choose_B = math.comb(5,2)
total = choose_A*choose_B
print("Choose 3 from 7 =", choose_A)
print("Choose 2 from 5 =", choose_B)
print("Product =", total)
print("Order matters =", False)
print("Total committees =", total)
Utskrift fra Python:
Choose 3 from 7 = 35
Choose 2 from 5 = 10
Product = 350
Order matters = False
Total committees = 350

Fasit: \(350\) komiteer.

Vanlig feil: Å bruke permutasjoner og dermed telle samme komité flere ganger.
Sensorpunkt: Kombinasjonstall og produktregelen skal brukes korrekt.
Del 1 - Oppgave 5bHypergeometrisk sannsynlighet

Oppgave 5b

Oppgave: Anne går i A og Jens i B. Bestem sannsynligheten for at begge kommer med.
Vis løsning

Hva spør oppgaven om? Vi teller gunstige komiteer med Anne og Jens fast valgt og deler på 350.

Steg 1 - Fest Anne

Da må 2 av de 6 andre i A velges: \(\binom62\).

Steg 2 - Fest Jens

Da må 1 av de 4 andre i B velges: \(\binom41\).

Steg 3 - Tell gunstige

\[\binom62\binom41=15\cdot4=60.\]

Steg 4 - Del på totalen

\[P=\frac{60}{350}.\]

Steg 5 - Forkort

\[P=\frac6{35}.\]

Steg 6 - Desimal

Dette er omtrent \(0.1714\), altså \(17.1\%\).

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
nCr(6,2)*nCr(4,1)/(nCr(7,3)*nCr(5,2))
\(6/35\approx0.1714\)

Tolkning: Telleren fikser Anne og Jens i komiteen.

Python-kontroll med SymPy

Python 3 - SymPy
import math
from fractions import Fraction
favorable = math.comb(6,2)*math.comb(4,1)
total = math.comb(7,3)*math.comb(5,2)
probability = Fraction(favorable,total)
print("Favorable committees =", favorable)
print("Total committees =", total)
print("Exact probability =", probability)
print("Decimal probability =", float(probability))
print("Percent =", round(100*float(probability),4))
Utskrift fra Python:
Favorable committees = 60
Total committees = 350
Exact probability = 6/35
Decimal probability = 0.17142857142857143
Percent = 17.1429

Fasit: \(\dfrac6{35}\approx0.1714\).

Vanlig feil: Å velge 3 nye fra A og 2 nye fra B etter at Anne og Jens allerede er med.
Sensorpunkt: Gunstige utvalg må redusere antall ledige plasser i begge klassene.
Del 1 - Oppgave 5cDisjunkte tilfeller

Oppgave 5c

Oppgave: Bestem sannsynligheten for at bare én av Anne og Jens kommer med.
Vis løsning

Hva spør oppgaven om? Vi deler i to disjunkte tilfeller: Anne med og Jens ikke med, eller Jens med og Anne ikke med.

Steg 1 - Anne med, Jens ikke

\[\binom62\binom42=15\cdot6=90.\]

Steg 2 - Anne ikke, Jens med

\[\binom63\binom41=20\cdot4=80.\]

Steg 3 - Summer gunstige

\[90+80=170.\]

Steg 4 - Del på totalen

\[P=\frac{170}{350}.\]

Steg 5 - Forkort

\[P=\frac{17}{35}.\]

Steg 6 - Desimal

\(P\approx0.4857\), altså omtrent \(48.6\%\).

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
(nCr(6,2)*nCr(4,2)+nCr(6,3)*nCr(4,1))/350
\(17/35\approx0.4857\)

Tolkning: De to tilfellene kan summeres fordi de ikke overlapper.

Python-kontroll med SymPy

Python 3 - SymPy
import math
from fractions import Fraction
anne_only = math.comb(6,2)*math.comb(4,2)
jens_only = math.comb(6,3)*math.comb(4,1)
favorable = anne_only+jens_only
total = math.comb(7,3)*math.comb(5,2)
probability = Fraction(favorable,total)
print("Anne only =", anne_only)
print("Jens only =", jens_only)
print("Favorable total =", favorable)
print("Exact probability =", probability)
print("Decimal probability =", float(probability))
Utskrift fra Python:
Anne only = 90
Jens only = 80
Favorable total = 170
Exact probability = 17/35
Decimal probability = 0.4857142857142857

Fasit: \(\dfrac{17}{35}\approx0.4857\).

Vanlig feil: Å telle tilfeller der begge eller ingen er med.
Sensorpunkt: De to eksakt-én-tilfellene skal telles separat og summeres.
Del 1 - Oppgave 6aArealmodell i kvartsirkel

Oppgave 6a

Oppgave: Vis at det fargelagte arealet er \[F(x)=\pi-x\sqrt{4-x^2},\quad0\le x\le2.\]
Vis løsning

Hva spør oppgaven om? Det fargelagte området er kvartsirkelens areal minus rektangelet OABC.

Steg 1 - Kvartsirkelens areal

Radius er 2, så arealet er \(\frac14\pi\cdot2^2=\pi\).

Steg 2 - Finn høyden til B

Siden B ligger på \(x^2+y^2=4\), er \(y=\sqrt{4-x^2}\).

Steg 3 - Rektangelets areal

Bredden er \(x\) og høyden er \(\sqrt{4-x^2}\).

Steg 4 - Skriv rektangelarealet

\[A_R=x\sqrt{4-x^2}.\]

Steg 5 - Trekk fra

\[F(x)=\pi-A_R=\pi-x\sqrt{4-x^2}.\]

Steg 6 - Oppgi domenet

Punktet A ligger fra 0 til 2, altså \(0\le x\le2\).

Illustrasjon til Oppgave 6a
Det fargelagte området er kvartsirkelen utenfor rektangelet.

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
y=sqrt(4-x^2)
Høyden til rektangelet
2
F(x)=pi-x*y
\(\pi-x\sqrt{4-x^2}\)

Tolkning: GeoGebra uttrykker høyden fra sirkelens ligning og trekker rektangelet fra kvartsirkelen.

Python-kontroll med SymPy

Python 3 - SymPy
import sympy as sp
x = sp.symbols("x", nonnegative=True)
y = sp.sqrt(4-x**2)
quarter_circle = sp.pi
rectangle = x*y
F = sp.simplify(quarter_circle-rectangle)
print("y-coordinate of B =", y)
print("Quarter-circle area =", quarter_circle)
print("Rectangle area =", rectangle)
print("Shaded area F(x) =", F)
print("Domain = [0, 2]")
Utskrift fra Python:
y-coordinate of B = sqrt(4 - x**2)
Quarter-circle area = pi
Rectangle area = x*sqrt(4 - x**2)
Shaded area F(x) = -x*sqrt(4 - x**2) + pi
Domain = [0, 2]

Fasit: \(F(x)=\pi-x\sqrt{4-x^2}\), \(0\le x\le2\).

Vanlig feil: Å bruke halvsirkelareal eller glemme at høyden bestemmes av sirkelens ligning.
Sensorpunkt: Arealoppdelingen og domenet skal forklares.
Del 1 - Oppgave 6bOptimering

Oppgave 6b

Oppgave: Finn det minste arealet det fargelagte området kan ha.
Vis løsning

Hva spør oppgaven om? Å minimere \(F\) er det samme som å maksimere rektangelarealet \(A=x\sqrt{4-x^2}\).

Steg 1 - Maksimer et enklere uttrykk

Siden \(A\ge0\), kan vi maksimere \(A^2=x^2(4-x^2)\).

Steg 2 - Definer

\[G(x)=4x^2-x^4.\]

Steg 3 - Deriver

\[G^{\prime}(x)=8x-4x^3=4x(2-x^2).\]

Steg 4 - Finn kritisk punkt

I det indre av intervallet får vi \(x=\sqrt2\).

Steg 5 - Finn maksimal rektangelflate

\[A=\sqrt2\sqrt{4-2}=2.\]

Steg 6 - Finn minimal skyggeflate

\[F_{\min}=\pi-2.\]

Steg 7 - Endepunktskontroll

Ved \(x=0\) og \(x=2\) er \(F=\pi\), så \(\pi-2\) er minst.

Illustrasjon til Oppgave 6b
Ved x = sqrt(2) blir rektangelet et kvadrat med areal 2.

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
Extremum[pi-x sqrt(4-x^2),0,2]
Minimum ved \(x=\sqrt2\)
2
F(sqrt(2))
\(\pi-2\)

Tolkning: Grafen og CAS viser det globale minimumet på det lukkede intervallet.

Python-kontroll med SymPy

Python 3 - SymPy
import sympy as sp
x = sp.symbols("x", real=True)
A2 = x**2*(4-x**2)
derivative = sp.factor(sp.diff(A2,x))
critical = [v for v in sp.solve(sp.Eq(derivative,0),x) if v.is_real]
A_at = sp.simplify(x*sp.sqrt(4-x**2)).subs(x,sp.sqrt(2))
F_min = sp.simplify(sp.pi-A_at)
print("A(x)^2 =", sp.expand(A2))
print("Derivative =", derivative)
print("Critical values =", critical)
print("Maximum rectangle area =", A_at)
print("Minimum shaded area =", F_min)
Utskrift fra Python:
A(x)^2 = -x**4 + 4*x**2
Derivative = -4*x*(x**2 - 2)
Critical values = [0, -sqrt(2), sqrt(2)]
Maximum rectangle area = 2
Minimum shaded area = -2 + pi

Fasit: \(F_{\min}=\pi-2\), oppnådd når \(x=\sqrt2\).

Vanlig feil: Å finne minimum av rektangelarealet i stedet for maksimum.
Sensorpunkt: Kritisk punkt, endepunkter og global minimumsverdi skal kontrolleres.
Del 1 - Oppgave 7aLikebeint trekant og tangent

Oppgave 7a

Oppgave: Begrunn at \(\triangle CEB\) er likebeint, og vis at \(EA=c-a\).
Vis løsning

Hva spør oppgaven om? Vi bruker at CD og DE er radier, at BC står vinkelrett på CD, og at tangenten EB står vinkelrett på DE.

Steg 1 - Radier gir like sider

\(CD=DE\), så \(\triangle CDE\) er likebeint og \(\angle DCE=\angle CED\).

Steg 2 - Bruk rett vinkel ved C

Fordi \(BC\perp CD\), er \(\angle BCE=90^{\circ}-\angle DCE\).

Steg 3 - Bruk tangentegenskapen

Fordi \(EB\perp DE\), er \(\angle CEB=90^{\circ}-\angle CED\).

Steg 4 - Sammenlikn vinklene

Siden \(\angle DCE=\angle CED\), får vi \(\angle BCE=\angle CEB\).

Steg 5 - Konkluder likebeint

Dermed er motstående sider like: \(BE=BC=a\).

Steg 6 - Bruk hypotenusen

\(BA=c\), og \(BA=BE+EA\).

Steg 7 - Finn EA

\[EA=c-a.\]

Illustrasjon til Oppgave 7a
Figuren viser radiusene CD og DE og tangeringen i E.

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
Angle[B,C,E]=Angle[C,E,B]
Like grunnvinkler
2
Distance[B,E]=Distance[B,C]
\(BE=a\)

Tolkning: Dynamisk geometri bekrefter vinkelargumentet og sidelikheten.

Python-kontroll med SymPy

Python 3 - SymPy
import sympy as sp
a, c = sp.symbols("a c", positive=True)
BE = a
BA = c
EA = sp.simplify(BA-BE)
angle_DCE, angle_CED = sp.symbols("theta theta")
print("CD = DE, so triangle CDE is isosceles")
print("angle(BCE) = 90 - theta")
print("angle(CEB) = 90 - theta")
print("Therefore BE = BC =", a)
print("EA = BA - BE =", EA)
Utskrift fra Python:
CD = DE, so triangle CDE is isosceles
angle(BCE) = 90 - theta
angle(CEB) = 90 - theta
Therefore BE = BC = a
EA = BA - BE = -a + c

Fasit: \(\triangle CEB\) er likebeint med \(BE=BC=a\), og \(EA=c-a\).

Vanlig feil: Å anta direkte fra figuren at BE=BC uten vinkelbegrunnelse.
Sensorpunkt: Radiuslikhet, to komplementvinkler og oppdelingen av hypotenusen skal brukes.
Del 1 - Oppgave 7bFormlikhet

Oppgave 7b

Oppgave: Begrunn at \(\triangle ABC\sim\triangle ADE\), og vis at \[r=\frac{a(c-a)}b.\]
Vis løsning

Hva spør oppgaven om? Trekantene har en felles vinkel ved A og hver sin rette vinkel.

Steg 1 - Finn rette vinkler

\(\angle ACB=90^{\circ}\) og \(\angle AED=90^{\circ}\).

Steg 2 - Felles vinkel

\(AD\) ligger langs \(AC\), og \(AE\) langs \(AB\), så vinkelen ved A er felles.

Steg 3 - Konkluder formlikhet

To like vinkler gir \(\triangle ABC\sim\triangle ADE\).

Steg 4 - Sett opp tilsvarende sider

\(BC\leftrightarrow DE\) og \(AC\leftrightarrow AE\).

Steg 5 - Skriv forholdet

\[\frac{a}{r}=\frac{b}{c-a}.\]

Steg 6 - Kryssmultipliser

Kryssmultiplikasjon gir \(a(c-a)=br\).

Steg 7 - Løs for r

\[r=\frac{a(c-a)}b.\]

Illustrasjon til Oppgave 7b
Formlikheten kobler siden a og radiusen r til b og c-a.

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
a/r=b/(c-a)
Forhold mellom tilsvarende sider
2
Solve[a/r=b/(c-a),r]
\(a(c-a)/b\)

Tolkning: CAS løser proporsjonen etter at formlikheten er etablert.

Python-kontroll med SymPy

Python 3 - SymPy
import sympy as sp
a, b, c, r = sp.symbols("a b c r", positive=True)
proportion = sp.Eq(a/r, b/(c-a))
solution = sp.solve(proportion,r)[0]
check = sp.simplify(a/r-b/(c-a)).subs(r,solution)
print("Similarity proportion =", proportion)
print("Cross-multiplied equation =", sp.Eq(a*(c-a),b*r))
print("r =", solution)
print("Substitution check =", check)
print("Correspondence: BC<->DE, AC<->AE")
Utskrift fra Python:
Similarity proportion = Eq(a/r, b/(-a + c))
Cross-multiplied equation = Eq(a*(-a + c), b*r)
r = a*(-a + c)/b
Substitution check = b/(a - c) + b/(-a + c)
Correspondence: BC<->DE, AC<->AE

Fasit: \(r=\dfrac{a(c-a)}b\).

Vanlig feil: Å bruke feil sidekorrespondanse i de formlike trekantene.
Sensorpunkt: Rette vinkler, felles vinkel og korrekt proporsjon skal dokumenteres.
Del 1 - Oppgave 7cAreal og innradius

Oppgave 7c

Oppgave: Vis ved arealbetraktning at \[ab=(a+c)r.\]
Vis løsning

Hva spør oppgaven om? Etter speiling får trekanten ABF grunnlinje \(BF=2a\), høyde \(b\), og en innskrevet sirkel med radius r.

Steg 1 - Areal med grunnlinje og høyde

\[A_{ABF}=\frac12\cdot2a\cdot b=ab.\]

Steg 2 - Del trekanten rundt innsentrum

Arealet er summen av tre trekanter med høyde r mot hver side.

Steg 3 - Bruk omkretsen

\[A_{ABF}=\frac12r(AB+BF+FA).\]

Steg 4 - Sett inn sidene

\(AB=FA=c\) og \(BF=2a\).

Steg 5 - Forenkle

\[A_{ABF}=\frac12r(c+2a+c)=r(a+c).\]

Steg 6 - Sammenlikn arealuttrykkene

\[ab=(a+c)r.\]

Illustrasjon til Oppgave 7c
Den speilede trekanten har grunnlinje 2a og innradius r.

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
1/2*(2a)*b
\(ab\)
2
1/2*r*(2a+2c)
\((a+c)r\)

Tolkning: De to arealformlene beskriver samme trekant.

Python-kontroll med SymPy

Python 3 - SymPy
import sympy as sp
a, b, c, r = sp.symbols("a b c r", positive=True)
area_base_height = sp.Rational(1,2)*(2*a)*b
perimeter = 2*a+2*c
area_inradius = sp.Rational(1,2)*r*perimeter
identity = sp.Eq(area_base_height,area_inradius)
print("Area from base and height =", area_base_height)
print("Perimeter =", perimeter)
print("Area from inradius =", sp.factor(area_inradius))
print("Area equation =", identity)
print("Simplified equation =", sp.Eq(a*b,(a+c)*r))
Utskrift fra Python:
Area from base and height = a*b
Perimeter = 2*a + 2*c
Area from inradius = r*(a + c)
Area equation = Eq(a*b, r*(2*a + 2*c)/2)
Simplified equation = Eq(a*b, r*(a + c))

Fasit: \(ab=(a+c)r\).

Vanlig feil: Å bruke omkretsen i stedet for halvparten av omkretsen i formelen \(A=rs\).
Sensorpunkt: Begge arealuttrykkene og hvorfor de gjelder samme trekant skal forklares.
Del 1 - Oppgave 7dBevis av Pytagoras

Oppgave 7d

Oppgave: Bruk resultatene fra b og c til å bevise Pytagoras’ setning.
Vis løsning

Hva spør oppgaven om? Begge formlene uttrykker radiusen r. Vi setter dem lik hverandre og forenkler.

Steg 1 - Isoler r fra arealformelen

Fra \(ab=(a+c)r\) får vi \[r=\frac{ab}{a+c}.\]

Steg 2 - Bruk formelen fra b

\[r=\frac{a(c-a)}b.\]

Steg 3 - Sett uttrykkene lik hverandre

\[\frac{a(c-a)}b=\frac{ab}{a+c}.\]

Steg 4 - Forkort a

Siden \(a>0\), kan vi dele på a.

Steg 5 - Kryssmultipliser

\[(c-a)(a+c)=b^2.\]

Steg 6 - Bruk konjugatsetningen

\[c^2-a^2=b^2.\]

Steg 7 - Flytt ledd

\[a^2+b^2=c^2.\]

Steg 8 - Konklusjon

Dette er Pytagoras’ setning.

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
Simplify[a(c-a)/b=ab/(a+c)]
\(c^2-a^2=b^2\)

Tolkning: Algebraisk forenkling av de to radiusuttrykkene gir Pytagoras.

Python-kontroll med SymPy

Python 3 - SymPy
import sympy as sp
a, b, c = sp.symbols("a b c", positive=True)
r1 = a*(c-a)/b
r2 = a*b/(a+c)
equation = sp.Eq(r1,r2)
cleared = sp.factor((r1-r2)*b*(a+c)/a)
print("r from similarity =", r1)
print("r from area =", r2)
print("Equation =", equation)
print("Cleared expression =", cleared)
print("Equivalent identity =", sp.Eq(a**2+b**2,c**2))
Utskrift fra Python:
r from similarity = a*(-a + c)/b
r from area = a*b/(a + c)
Equation = Eq(a*(-a + c)/b, a*b/(a + c))
Cleared expression = -a**2 - b**2 + c**2
Equivalent identity = Eq(a**2 + b**2, c**2)

Fasit: \(a^2+b^2=c^2\).

Vanlig feil: Å kryssmultiplisere feil eller ikke forklare hvorfor a kan forkortes.
Sensorpunkt: Beviset skal være en sammenhengende kjede fra radiusformlene til Pytagoras.

Del 2 - med hjelpemidler

Del 2 - Oppgave 1aTotal sannsynlighet

Oppgave 1a

Oppgave: 80 % av e-postene er søppelpost. 85 % av søppelposten og 3 % av annen post inneholder listeord. Finn sannsynligheten for listeord.
Vis løsning

Hva spør oppgaven om? Vi deler etter om e-posten er søppelpost eller ikke og bruker total sannsynlighet.

Steg 1 - Definer hendelser

La \(S\) være søppelpost og \(L\) være at e-posten inneholder listeord.

Steg 2 - Oppgi data

\(P(S)=0.80\), \(P(L\mid S)=0.85\), \(P(L\mid S^c)=0.03\).

Steg 3 - Bruk total sannsynlighet

\[P(L)=P(S)P(L\mid S)+P(S^c)P(L\mid S^c).\]

Steg 4 - Sett inn

\[P(L)=0.80\cdot0.85+0.20\cdot0.03.\]

Steg 5 - Regn ut

\[P(L)=0.680+0.006=0.686.\]

Steg 6 - Prosent

Sannsynligheten er \(68.6\%\).

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
0.8*0.85+0.2*0.03
\(0.686\)

Tolkning: Sannsynligheten summeres over de to disjunkte e-posttypene.

Python-kontroll med SymPy

Python 3 - SymPy
from fractions import Fraction
p_spam = Fraction(80,100)
p_word_given_spam = Fraction(85,100)
p_word_given_not = Fraction(3,100)
p_word = p_spam*p_word_given_spam + (1-p_spam)*p_word_given_not
print("P(spam) =", p_spam)
print("P(word|spam) =", p_word_given_spam)
print("P(word|not spam) =", p_word_given_not)
print("P(word) =", p_word)
print("Decimal =", float(p_word))
Utskrift fra Python:
P(spam) = 4/5
P(word|spam) = 17/20
P(word|not spam) = 3/100
P(word) = 343/500
Decimal = 0.686

Fasit: \(P(L)=0.686=68.6\%\).

Vanlig feil: Å legge sammen 0.85 og 0.03 uten å vekte med gruppenes størrelser.
Sensorpunkt: Formelen for total sannsynlighet og begge grener skal vises.
Del 2 - Oppgave 1bBayes’ setning

Oppgave 1b

Oppgave: Finn sannsynligheten for at en e-post er søppelpost når den inneholder listeord.
Vis løsning

Hva spør oppgaven om? Dette er den omvendte betingede sannsynligheten \(P(S\mid L)\).

Steg 1 - Bruk Bayes

\[P(S\mid L)=\frac{P(S\cap L)}{P(L)}.\]

Steg 2 - Finn telleren

\[P(S\cap L)=0.80\cdot0.85=0.68.\]

Steg 3 - Bruk svaret fra a

\(P(L)=0.686\).

Steg 4 - Sett inn

\[P(S\mid L)=\frac{0.68}{0.686}.\]

Steg 5 - Forkort eksakt

\[\frac{680}{686}=\frac{340}{343}.\]

Steg 6 - Desimal

\[P(S\mid L)\approx0.9913.\]

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
0.8*0.85/0.686
\(340/343\approx0.9913\)

Tolkning: Listeord er en svært sterk indikator på søppelpost i denne modellen.

Python-kontroll med SymPy

Python 3 - SymPy
from fractions import Fraction
p_joint = Fraction(80,100)*Fraction(85,100)
p_word = Fraction(686,1000)
p_conditional = p_joint/p_word
print("P(spam and word) =", p_joint)
print("P(word) =", p_word)
print("P(spam|word) =", p_conditional)
print("Decimal =", float(p_conditional))
print("Percent =", round(100*float(p_conditional),4))
Utskrift fra Python:
P(spam and word) = 17/25
P(word) = 343/500
P(spam|word) = 340/343
Decimal = 0.9912536443148688
Percent = 99.1254

Fasit: \(\dfrac{340}{343}\approx0.9913\), altså omtrent \(99.13\%\).

Vanlig feil: Å svare 85 %, som er \(P(L\mid S)\), ikke \(P(S\mid L)\).
Sensorpunkt: Riktig retning på den betingede sannsynligheten og Bayes-brøken skal vises.
Del 2 - Oppgave 1cBayes med komplement

Oppgave 1c

Oppgave: Finn sannsynligheten for at e-posten er søppelpost selv om den ikke inneholder listeord.
Vis løsning

Hva spør oppgaven om? Vi beregner \(P(S\mid L^c)\) med komplement-sannsynligheter.

Steg 1 - Finn sannsynlighet uten ord gitt spam

\(P(L^c\mid S)=1-0.85=0.15\).

Steg 2 - Finn sannsynlighet uten ord gitt ikke-spam

\(P(L^c\mid S^c)=1-0.03=0.97\).

Steg 3 - Finn total sannsynlighet for ingen ord

\[P(L^c)=0.8\cdot0.15+0.2\cdot0.97=0.314.\]

Steg 4 - Finn felles sannsynlighet

\[P(S\cap L^c)=0.8\cdot0.15=0.12.\]

Steg 5 - Bruk definisjonen

\[P(S\mid L^c)=0.12/0.314.\]

Steg 6 - Forkort

\[P(S\mid L^c)=60/157\approx0.3822.\]

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
0.8*0.15/(0.8*0.15+0.2*0.97)
\(60/157\approx0.3822\)

Tolkning: Fravær av listeord reduserer spam-sannsynligheten, men eliminerer den ikke.

Python-kontroll med SymPy

Python 3 - SymPy
from fractions import Fraction
p_no_given_spam = Fraction(15,100)
p_no_given_not = Fraction(97,100)
p_no = Fraction(80,100)*p_no_given_spam + Fraction(20,100)*p_no_given_not
p_joint = Fraction(80,100)*p_no_given_spam
result = p_joint/p_no
print("P(no word|spam) =", p_no_given_spam)
print("P(no word|not spam) =", p_no_given_not)
print("P(no word) =", p_no)
print("P(spam and no word) =", p_joint)
print("P(spam|no word) =", result, "=", float(result))
Utskrift fra Python:
P(no word|spam) = 3/20
P(no word|not spam) = 97/100
P(no word) = 157/500
P(spam and no word) = 3/25
P(spam|no word) = 60/157 = 0.3821656050955414

Fasit: \(\dfrac{60}{157}\approx0.3822\), altså omtrent \(38.2\%\).

Vanlig feil: Å bruke 0.15 direkte som svar; det er en annen betinget sannsynlighet.
Sensorpunkt: Komplementene, total sannsynlighet og korrekt Bayes-brøk skal dokumenteres.
Del 2 - Oppgave 2aParameter og ekstremalpunkter

Oppgave 2a

Oppgave: For \(f(x)=-x^3+x^2+kx+2\), finn k-verdiene som gir både toppunkt og bunnpunkt.
Vis løsning

Hva spør oppgaven om? Grafen har to ulike ekstremalpunkter når den deriverte har to ulike reelle nullpunkter.

Steg 1 - Deriver

\[f^{\prime}(x)=-3x^2+2x+k.\]

Steg 2 - Bruk diskriminanten

For andregradslikningen er \(a=-3\), \(b=2\), \(c=k\).

Steg 3 - Regn diskriminanten

\[\Delta=2^2-4(-3)k=4+12k.\]

Steg 4 - Krev to ulike røtter

\[4+12k>0.\]

Steg 5 - Løs ulikheten

\[k>-\frac13.\]

Steg 6 - Forklar randverdien

For \(k=-1/3\) får den deriverte dobbeltrot, ikke både topp og bunn.

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
Discriminant[-3x^2+2x+k,x]
\(4+12k\)
2
Solve[4+12k>0,k]
\(k>-1/3\)

Tolkning: Positiv diskriminant gir to forskjellige stasjonære punkter.

Python-kontroll med SymPy

Python 3 - SymPy
import sympy as sp
x, k = sp.symbols("x k", real=True)
f = -x**3+x**2+k*x+2
f_prime = sp.diff(f,x)
disc = sp.discriminant(f_prime,x)
condition = sp.solve_univariate_inequality(disc>0,k)
print("f'(x) =", f_prime)
print("Discriminant =", disc)
print("Condition =", condition)
print("Boundary k =", -sp.Rational(1,3))
print("Double-root check =", sp.factor(f_prime.subs(k,-sp.Rational(1,3))))
Utskrift fra Python:
f'(x) = k - 3*x**2 + 2*x
Discriminant = 12*k + 4
Condition = -1/3 < k
Boundary k = -1/3
Double-root check = -(3*x - 1)**2/3

Fasit: \(k>-\dfrac13\).

Vanlig feil: Å bruke \(\Delta\ge0\); dobbeltrot gir ikke to ekstremalpunkter.
Sensorpunkt: Sammenhengen mellom ekstremalpunkter og positiv diskriminant må forklares.
Del 2 - Oppgave 2bBestemme parameter og bunnpunkt

Oppgave 2b

Oppgave: Bestem k slik at grafen har toppunkt ved \(x=2\), og finn bunnpunktet.
Vis løsning

Hva spør oppgaven om? Et ekstremalpunkt ved \(x=2\) krever \(f^{\prime}(2)=0\). Deretter klassifiserer vi de to kritiske punktene.

Steg 1 - Sett inn x=2 i den deriverte

\[f^{\prime}(2)=-3\cdot4+2\cdot2+k=k-8.\]

Steg 2 - Løs

\(k-8=0\Rightarrow k=8\).

Steg 3 - Faktoriser den deriverte

For \(k=8\): \[f^{\prime}(x)=-3x^2+2x+8=-(3x+4)(x-2).\]

Steg 4 - Finn andre kritiske punkt

\(x=-4/3\).

Steg 5 - Klassifiser

\(f^{\prime\prime}(x)=-6x+2\). Ved \(x=-4/3\) er den positiv, så punktet er et bunnpunkt.

Steg 6 - Finn y-koordinaten

\[f(-4/3)=-122/27.\]

Steg 7 - Oppgi bunnpunktet

\[\left(-\frac43,-\frac{122}{27}\right).\]

Illustrasjon til Oppgave 2b
Grafen for k = 8 viser bunnpunkt, toppunkt og vendepunkt.

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
Solve[Derivative[-x^3+x^2+kx+2,x] at x=2=0,k]
\(k=8\)
2
Extremum[-x^3+x^2+8x+2]
\((-4/3,-122/27),(2,14)\)

Tolkning: CAS finner både parameteren og de to ekstremalpunktene.

Python-kontroll med SymPy

Python 3 - SymPy
import sympy as sp
x, k = sp.symbols("x k", real=True)
f = -x**3+x**2+k*x+2
k_value = sp.solve(sp.Eq(sp.diff(f,x).subs(x,2),0),k)[0]
f8 = f.subs(k,k_value)
critical = sp.solve(sp.Eq(sp.diff(f8,x),0),x)
data = [(v,sp.simplify(f8.subs(x,v)),sp.simplify(sp.diff(f8,x,2).subs(x,v))) for v in critical]
print("k =", k_value)
print("f'(x) for k=8 =", sp.factor(sp.diff(f8,x)))
print("Critical x-values =", critical)
print("(x, y, f'') data =", data)
print("Bottom point =", (-sp.Rational(4,3),-sp.Rational(122,27)))
Utskrift fra Python:
k = 8
f'(x) for k=8 = -(x - 2)*(3*x + 4)
Critical x-values = [-4/3, 2]
(x, y, f'') data = [(-4/3, -122/27, 10), (2, 14, -10)]
Bottom point = (-4/3, -122/27)

Fasit: \(k=8\), og bunnpunktet er \(\left(-\frac43,-\frac{122}{27}\right)\).

Vanlig feil: Å oppgi toppunktet i stedet for det andre ekstremalpunktet, eller bruke avrundede koordinater.
Sensorpunkt: Parameterbetingelsen, den andre roten og klassifiseringen skal vises.
Del 2 - Oppgave 2cVendepunkt og maksimal vekstfart

Oppgave 2c

Oppgave: Finn vendepunktet uttrykt ved k, og bestem k når største momentane vekstfart er 2.
Vis løsning

Hva spør oppgaven om? Vendepunktet finnes fra \(f^{\prime\prime}=0\). Den største vekstfarten er maksimumsverdien til den nedovervendte parabelen \(f^{\prime}\).

Steg 1 - Finn andrederivert

\[f^{\prime\prime}(x)=-6x+2.\]

Steg 2 - Finn vendepunktets x-verdi

\(-6x+2=0\Rightarrow x=1/3\).

Steg 3 - Finn y-verdien

\[f(1/3)=\frac{56}{27}+\frac{k}{3}=\frac{56+9k}{27}.\]

Steg 4 - Oppgi vendepunktet

\[V=\left(\frac13,\frac{56+9k}{27}\right).\]

Steg 5 - Maksimer f-prime

\(f^{\prime}(x)=-3x^2+2x+k\) har topp ved \(x=1/3\).

Steg 6 - Finn maksimal vekstfart

\[f^{\prime}(1/3)=k+1/3.\]

Steg 7 - Sett lik 2

\(k+1/3=2\Rightarrow k=5/3\).

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
InflectionPoint[-x^3+x^2+kx+2]
\((1/3,(56+9k)/27)\)
2
Solve[Derivative[f](1/3)=2,k]
\(k=5/3\)

Tolkning: Vendepunktets x-verdi er også toppunktet til den deriverte.

Python-kontroll med SymPy

Python 3 - SymPy
import sympy as sp
x, k = sp.symbols("x k", real=True)
f = -x**3+x**2+k*x+2
f_prime = sp.diff(f,x)
f_second = sp.diff(f,x,2)
x_v = sp.solve(sp.Eq(f_second,0),x)[0]
y_v = sp.simplify(f.subs(x,x_v))
max_growth = sp.simplify(f_prime.subs(x,x_v))
k_value = sp.solve(sp.Eq(max_growth,2),k)[0]
print("f''(x) =", f_second)
print("Inflection point =", (x_v,y_v))
print("Maximum growth =", max_growth)
print("k for maximum growth 2 =", k_value)
print("Check =", max_growth.subs(k,k_value))
Utskrift fra Python:
f''(x) = 2*(1 - 3*x)
Inflection point = (1/3, k/3 + 56/27)
Maximum growth = k + 1/3
k for maximum growth 2 = 5/3
Check = 2

Fasit: Vendepunkt \(\left(\frac13,\frac{56+9k}{27}\right)\), og \(k=\frac53\).

Vanlig feil: Å tro at største vekstfart er funksjonens toppunkt; det er maksimum av den deriverte.
Sensorpunkt: Vendepunktet og toppunktet til f-prime skal kobles korrekt.
Del 2 - Oppgave 3aNullpunkt for høydefunksjon

Oppgave 3a

Oppgave: Bestem hvor lang tid det tar før hver golfball treffer bakken.
Vis løsning

Hva spør oppgaven om? Bakken tilsvarer andrekoordinat lik null. Vi løser hver andregradslikning og velger positiv tid.

Steg 1 - Ball 1

\[-5t^2+29t+20=0.\]

Steg 2 - Løs ball 1

\[t=\frac{29\pm\sqrt{1241}}{10}.\] Den positive løsningen er omtrent \(6.423\) s.

Steg 3 - Numerisk kontroll ball 1

\(\sqrt{1241}\approx35.228\), så \(t_1\approx6.423\) s.

Steg 4 - Ball 2

\[-5t^2+25t+20=0.\]

Steg 5 - Løs ball 2

\[t=\frac{25\pm\sqrt{1025}}{10}=\frac{5\pm\sqrt{41}}2.\]

Steg 6 - Velg positiv løsning

\[t_2=\frac{5+\sqrt{41}}2\approx5.702\text{ s}.\]

Steg 7 - Forkast negative tider

De negative røttene ligger før utslaget og har ingen fysisk betydning.

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
Solve[-5t^2+29t+20=0,t]
\((29\pm\sqrt{1241})/10\)
2
Solve[-5t^2+25t+20=0,t]
\((5\pm\sqrt{41})/2\)

Tolkning: De positive røttene er tidene når høyden blir null.

Python-kontroll med SymPy

Python 3 - SymPy
import sympy as sp
t = sp.symbols("t", real=True)
y1 = -5*t**2+29*t+20
y2 = -5*t**2+25*t+20
roots1 = sp.solve(sp.Eq(y1,0),t)
roots2 = sp.solve(sp.Eq(y2,0),t)
pos1 = max(roots1,key=lambda z: float(z))
pos2 = max(roots2,key=lambda z: float(z))
print("Ball 1 roots =", roots1)
print("Ball 1 positive time =", pos1, "=", float(pos1))
print("Ball 2 roots =", roots2)
print("Ball 2 positive time =", pos2, "=", float(pos2))
print("Height checks =", (sp.simplify(y1.subs(t,pos1)),sp.simplify(y2.subs(t,pos2))))
Utskrift fra Python:
Ball 1 roots = [29/10 - sqrt(1241)/10, 29/10 + sqrt(1241)/10]
Ball 1 positive time = 29/10 + sqrt(1241)/10 = 6.422782990761707
Ball 2 roots = [5/2 - sqrt(41)/2, 5/2 + sqrt(41)/2]
Ball 2 positive time = 5/2 + sqrt(41)/2 = 5.701562118716424
Height checks = (0, 0)

Fasit: Ball 1: \(\dfrac{29+\sqrt{1241}}{10}\approx6.423\) s. Ball 2: \(\dfrac{5+\sqrt{41}}2\approx5.702\) s.

Vanlig feil: Å velge den negative roten eller bruke førstekoordinaten for å finne bakketreff.
Sensorpunkt: Begge høydefunksjonene, positive røtter og enhet skal oppgis.
Del 2 - Oppgave 3bTegning av parameterkurver

Oppgave 3b

Oppgave: Tegn grafene til \(\vec r_1\) og \(\vec r_2\).
Vis løsning

Hva spør oppgaven om? Vi tegner andrekoordinaten mot førstekoordinaten for fysisk relevante tider fra \(t=0\) til bakketreff.

Steg 1 - Ball 1-koordinater

\(x_1=17t\), \(y_1=-5t^2+29t+20\).

Steg 2 - Ball 2-koordinater

\(x_2=24t\), \(y_2=-5t^2+25t+20\).

Steg 3 - Bruk tidsintervaller

Ball 1 tegnes for \(0\le t\le t_1\), ball 2 for \(0\le t\le t_2\).

Steg 4 - Startpunkt

Begge starter i \((0,20)\).

Steg 5 - Form

Begge baner er nedovervendte parabelbuer i xy-planet.

Steg 6 - Dokumenter verktøyet

Parameterkommandoer og intervaller skal oppgis sammen med grafen.

Illustrasjon til Oppgave 3b
De to ballbanene er tegnet i samme koordinatsystem.

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
Curve[17t,-5t^2+29t+20,t,0,(29+sqrt(1241))/10]
Ball 1
2
Curve[24t,-5t^2+25t+20,t,0,(5+sqrt(41))/2]
Ball 2

Tolkning: Parameterkurvene viser de fysiske banene fram til bakken.

Python-kontroll med SymPy

Python 3 - SymPy
import sympy as sp
t = sp.symbols("t", real=True)
r1 = sp.Matrix([17*t,-5*t**2+29*t+20])
r2 = sp.Matrix([24*t,-5*t**2+25*t+20])
T1 = (29+sp.sqrt(1241))/10
T2 = (5+sp.sqrt(41))/2
print("r1(t) =", list(r1))
print("r2(t) =", list(r2))
print("Start points =", (list(r1.subs(t,0)),list(r2.subs(t,0))))
print("End time ball 1 =", T1)
print("End time ball 2 =", T2)
print("End heights =", (sp.simplify(r1[1].subs(t,T1)),sp.simplify(r2[1].subs(t,T2))))
Utskrift fra Python:
r1(t) = [17*t, -5*t**2 + 29*t + 20]
r2(t) = [24*t, -5*t**2 + 25*t + 20]
Start points = ([0, 20], [0, 20])
End time ball 1 = 29/10 + sqrt(1241)/10
End time ball 2 = 5/2 + sqrt(41)/2
End heights = (0, 0)

Fasit: Grafene er de to parameterkurvene vist i figuren, begge fra \((0,20)\) til bakken.

Vanlig feil: Å tegne høyde som funksjon av tid i stedet for y-koordinat mot x-koordinat.
Sensorpunkt: Parameterframstilling, korrekt tidsintervall og tydelige akser skal dokumenteres.
Del 2 - Oppgave 3cBanefart

Oppgave 3c

Oppgave: Bestem banefarten til hver ball idet de forlater taket.
Vis løsning

Hva spør oppgaven om? Banefarten er lengden av fartsvektoren \(ec r^{\prime}(t)\), evaluert ved \(t=0\).

Steg 1 - Deriver ball 1

\[\vec v_1(t)=(17,29-10t).\]

Steg 2 - Startfart ball 1

\(\vec v_1(0)=(17,29)\).

Steg 3 - Finn lengden

\[|\vec v_1(0)|=\sqrt{17^2+29^2}=\sqrt{1130}\approx33.62.\]

Steg 4 - Deriver ball 2

\[\vec v_2(t)=(24,25-10t).\]

Steg 5 - Startfart ball 2

\(\vec v_2(0)=(24,25)\).

Steg 6 - Finn lengden

\[|\vec v_2(0)|=\sqrt{24^2+25^2}=\sqrt{1201}\approx34.66.\]

Steg 7 - Enhet

Begge fartene måles i meter per sekund.

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
Length[Vector[(0,0),(17,29)]]
\(\sqrt{1130}\)
2
Length[Vector[(0,0),(24,25)]]
\(\sqrt{1201}\)

Tolkning: Lengden av fartsvektoren gir banefarten.

Python-kontroll med SymPy

Python 3 - SymPy
import sympy as sp
t = sp.symbols("t", real=True)
r1 = sp.Matrix([17*t,-5*t**2+29*t+20])
r2 = sp.Matrix([24*t,-5*t**2+25*t+20])
v1 = r1.diff(t); v2 = r2.diff(t)
s1 = sp.sqrt(v1.subs(t,0).dot(v1.subs(t,0)))
s2 = sp.sqrt(v2.subs(t,0).dot(v2.subs(t,0)))
print("v1(t) =", list(v1))
print("v2(t) =", list(v2))
print("Initial speed ball 1 =", s1, "=", float(s1))
print("Initial speed ball 2 =", s2, "=", float(s2))
print("Units = m/s")
Utskrift fra Python:
v1(t) = [17, 29 - 10*t]
v2(t) = [24, 25 - 10*t]
Initial speed ball 1 = sqrt(1130) = 33.61547262794322
Initial speed ball 2 = sqrt(1201) = 34.655446902326915
Units = m/s

Fasit: Ball 1: \(\sqrt{1130}\approx33.62\) m/s. Ball 2: \(\sqrt{1201}\approx34.66\) m/s.

Vanlig feil: Å oppgi fartsvektoren uten å beregne lengden.
Sensorpunkt: Derivasjon, evaluering ved t=0, norm og enhet skal vises.
Del 2 - Oppgave 3dParallelle fartsvektorer og vinkel

Oppgave 3d

Oppgave: Finn tidspunktet da ballene har samme fartsretning, og vinkelen med x-aksen.
Vis løsning

Hva spør oppgaven om? Samme retning betyr at fartsvektorene er parallelle med positiv proporsjonalitetsfaktor.

Steg 1 - Bruk fartsvektorene

\(\vec v_1=(17,29-10t)\), \(\vec v_2=(24,25-10t)\).

Steg 2 - Sett determinant lik null

\[17(25-10t)-24(29-10t)=0.\]

Steg 3 - Forenkle

\[70t-271=0.\]

Steg 4 - Finn tidspunktet

\[t=\frac{271}{70}\approx3.871\text{ s}.\]

Steg 5 - Finn felles helning

Ved dette tidspunktet er \((29-10t)/17=-4/7\), og samme forhold fås for ball 2.

Steg 6 - Finn vinkelen

\[\theta=\arctan(-4/7)\approx-29.745^{\circ}.\]

Steg 7 - Tolk

Vektorene peker omtrent \(29.7^{\circ}\) nedover fra positiv x-retning, eventuelt \(330.3^{\circ}\).

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
Solve[17(25-10t)-24(29-10t)=0,t]
\(271/70\)
2
atan(-4/7)
\(-29.745^{\circ}\)

Tolkning: Positiv x-komponent i begge vektorer viser at de har samme, ikke motsatt, retning.

Python-kontroll med SymPy

Python 3 - SymPy
import sympy as sp
t = sp.symbols("t", real=True)
v1 = sp.Matrix([17,29-10*t])
v2 = sp.Matrix([24,25-10*t])
determinant = sp.det(sp.Matrix.hstack(v1,v2))
time = sp.solve(sp.Eq(determinant,0),t)[0]
slope1 = sp.simplify(v1[1].subs(t,time)/v1[0])
slope2 = sp.simplify(v2[1].subs(t,time)/v2[0])
import math
angle = math.degrees(math.atan(float(slope1)))
print("Determinant =", determinant)
print("Time =", time, "=", float(time))
print("Slopes =", (slope1,slope2))
print("Angle in degrees =", round(angle,6))
print("Positive-direction check =", float(v1[0])>0 and float(v2[0])>0)
Utskrift fra Python:
Determinant = 70*t - 271
Time = 271/70 = 3.8714285714285714
Slopes = (-4/7, -4/7)
Angle in degrees = -29.744881
Positive-direction check = True

Fasit: \(t=\dfrac{271}{70}\approx3.871\) s, og vinkelen er \(-29.745^{\circ}\) eller \(330.255^{\circ}\).

Vanlig feil: Å bruke lik fart i stedet for lik fartsretning, eller glemme å kontrollere at retningen ikke er motsatt.
Sensorpunkt: Parallellbetingelse, tidspunkt, helning og vinkel skal dokumenteres.
Del 2 - Oppgave 4aCAS-bevis med andre skjæringspunkt

Oppgave 4a

Oppgave: For \(f(x)=x^2/(4p)\), \(P(0,p)\), \(Q(q,f(q))\), vis at den andre skjæringen R har x-koordinat \(-4p^2/q\).
Vis løsning

Hva spør oppgaven om? Vi finner linjen gjennom P og Q, setter den lik parabelen og bruker at q er den ene roten.

Steg 1 - Finn Q

\[Q=\left(q,\frac{q^2}{4p}\right).\]

Steg 2 - Finn linjens stigningstall

\[m=\frac{q^2/(4p)-p}{q}=\frac{q^2-4p^2}{4pq}.\]

Steg 3 - Skriv linjen

\[y=p+mx.\]

Steg 4 - Finn skjæringslikningen

\[\frac{x^2}{4p}=p+mx\Rightarrow x^2-4pmx-4p^2=0.\]

Steg 5 - Bruk rotproduktet

Produktet av røttene er \(-4p^2\). Den ene roten er q.

Steg 6 - Finn den andre roten

\[q\,x_R=-4p^2\Rightarrow x_R=-\frac{4p^2}{q}.\]

Steg 7 - Forutsetning

Her må \(q\ne0\), ellers er Q=P i x-koordinat og linjen er ikke definert på denne måten.

Illustrasjon til Oppgave 4a
Eksempelfiguren viser P, Q og den andre skjæringen R.

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
m=(q^2/(4p)-p)/q
\((q^2-4p^2)/(4pq)\)
2
Solve[x^2/(4p)=p+m x,x]
\(q,-4p^2/q\)

Tolkning: CAS faktoriserer skjæringslikningen i de to røttene.

Python-kontroll med SymPy

Python 3 - SymPy
import sympy as sp
x, p, q = sp.symbols("x p q", nonzero=True)
m = sp.simplify((q**2/(4*p)-p)/q)
intersection_poly = sp.factor(x**2-4*p*m*x-4*p**2)
factored = sp.factor(intersection_poly)
other_root = -4*p**2/q
print("Line slope m =", m)
print("Intersection polynomial =", intersection_poly)
print("Factored polynomial =", factored)
print("Known root q check =", sp.simplify(intersection_poly.subs(x,q)))
print("Other root =", other_root)
print("Other-root check =", sp.simplify(intersection_poly.subs(x,other_root)))
Utskrift fra Python:
Line slope m = -p/q + q/(4*p)
Intersection polynomial = (4*p**2 + q*x)*(-q + x)/q
Factored polynomial = (4*p**2 + q*x)*(-q + x)/q
Known root q check = 0
Other root = -4*p**2/q
Other-root check = 0

Fasit: \(x_R=-\dfrac{4p^2}{q}\).

Vanlig feil: Å miste minustegnet i rotproduktet eller anta at begge skjæringspunktene er positive.
Sensorpunkt: Ligningen for linjen og en symbolsk skjæringsberegning skal dokumenteres.
Del 2 - Oppgave 4bNormale tangenter

Oppgave 4b

Oppgave: Vis med CAS at tangentene i Q og R står normalt på hverandre.
Vis løsning

Hva spør oppgaven om? Tangentens stigningstall er \(f^{\prime}(x)=x/(2p)\). To ikke-vertikale linjer er normale når produktet av stigningstallene er -1.

Steg 1 - Deriver parabelen

\[f^{\prime}(x)=\frac{x}{2p}.\]

Steg 2 - Tangentstigning i Q

\[m_Q=f^{\prime}(q)=\frac{q}{2p}.\]

Steg 3 - Bruk x-koordinaten til R

\[x_R=-\frac{4p^2}{q}.\]

Steg 4 - Tangentstigning i R

\[m_R=f^{\prime}(x_R)=\frac{-4p^2/q}{2p}=-\frac{2p}{q}.\]

Steg 5 - Multipliser

\[m_Qm_R=\frac{q}{2p}\left(-\frac{2p}{q}\right)=-1.\]

Steg 6 - Konkluder

Tangentene står derfor normalt på hverandre.

Steg 7 - Gyldighet

For \(p>0\) og \(q\ne0\) er begge stigningstallene endelige.

Illustrasjon til Oppgave 4b
Tangentene i Q og R er normale for alle tillatte p og q.

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
f(x)=x^2/(4p)
Parabel
2
Simplify[f'(q)*f'(-4p^2/q)]
\(-1\)

Tolkning: Produktet -1 er den algebraiske normalitetsbetingelsen.

Python-kontroll med SymPy

Python 3 - SymPy
import sympy as sp
x, p, q = sp.symbols("x p q", nonzero=True)
f = x**2/(4*p)
f_prime = sp.diff(f,x)
x_R = -4*p**2/q
m_Q = sp.simplify(f_prime.subs(x,q))
m_R = sp.simplify(f_prime.subs(x,x_R))
product = sp.simplify(m_Q*m_R)
print("f'(x) =", f_prime)
print("x_R =", x_R)
print("m_Q =", m_Q)
print("m_R =", m_R)
print("m_Q*m_R =", product)
print("Perpendicular =", product == -1)
Utskrift fra Python:
f'(x) = x/(2*p)
x_R = -4*p**2/q
m_Q = q/(2*p)
m_R = -2*p/q
m_Q*m_R = -1
Perpendicular = True

Fasit: Tangentene står normalt på hverandre fordi \(m_Qm_R=-1\).

Vanlig feil: Å sammenlikne tangentpunktenes koordinater i stedet for tangentstigningene.
Sensorpunkt: Derivasjon, substitusjon av x_R og produktet -1 skal vises.
Kilde og metode: Oppgavetekstene er transkribert fra Utdanningsdirektoratets eksamenssett REA3022 Matematikk R1, høsten 2019. Sidebildene fra original-PDF-en er brukt som autoritativ kilde ved symboler og figurer. Løsningene, figurene og kontrollkodene er originale ifingo-utarbeidelser. Python-utskriftene er generert ved faktisk kjøring av hver kodeblokk under produksjonen.