R1 eksamenVår 2018

Matematikk R1 eksamen – vår 2018

ifingo
Norsk (Bokmål)

ifingo · Matematikk R1

Matematikk R1 - våren 2018 (REA3022)

Løsningsforslag til eksamenssettet fra Utdanningsdirektoratet.

Del 1 - uten hjelpemidler

Del 1 - Oppgave 1aDerivasjon - potensregelen

Oppgave 1a

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

Hva spør oppgaven om? Vi skal derivere hvert ledd separat ved hjelp av potensregelen.

Steg 1 - Del funksjonen i ledd

Leddene er \(x^4\), \(-x\) og konstanten \(2\).

Steg 2 - Bruk potensregelen

For \(x^n\) gjelder \(\frac{d}{dx}x^n=nx^{n-1}\).

Steg 3 - Deriver fjerdegradsleddet

\[\frac{d}{dx}x^4=4x^3.\]

Steg 4 - Deriver førstegradsleddet

\[\frac{d}{dx}(-x)=-1.\]

Steg 5 - Deriver konstanten

\[\frac{d}{dx}2=0.\]

Steg 6 - Samle resultatet

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

GeoGebra/CAS-kontroll

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

Tolkning: CAS deriverer polynomet ledd for ledd.

Python-kontroll med SymPy

Python 3 - SymPy
import sympy as sp
x = sp.symbols("x", real=True)
f = x**4 - x + 2
term_power = sp.diff(x**4, x)
term_linear = sp.diff(-x, x)
term_constant = sp.diff(2, x)
derivative = sp.diff(f, x)
print("f(x) =", f)
print("Derivative of x**4 =", term_power)
print("Derivative of -x =", term_linear)
print("Derivative of 2 =", term_constant)
print("f'(x) =", derivative)
print("Expanded check =", sp.expand(derivative))
Utskrift fra Python:
f(x) = x**4 - x + 2
Derivative of x**4 = 4*x**3
Derivative of -x = -1
Derivative of 2 = 0
f'(x) = 4*x**3 - 1
Expanded check = 4*x**3 - 1

Fasit: \(f^{\prime}(x)=4x^3-1\).

Vanlig feil: Å la konstantleddet bli stående i den deriverte.
Sensorpunkt: Sensor forventer korrekt potensregel og korrekt fortegn på den deriverte av \(-x\).
Del 1 - Oppgave 1bDerivasjon - produktregelen

Oppgave 1b

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

Hva spør oppgaven om? Funksjonen er et produkt, så produktregelen må brukes. Dessuten er \(x>0\) fordi \(\ln x\) inngår.

Steg 1 - Velg faktorene

Sett \(u(x)=x^3\) og \(v(x)=\ln x\).

Steg 2 - Deriver faktorene

\[u^{\prime}(x)=3x^2,\qquad v^{\prime}(x)=\frac1x.\]

Steg 3 - Skriv produktregelen

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

Steg 4 - Sett inn

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

Steg 5 - Forenkle

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

Steg 6 - Faktoriser

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

GeoGebra/CAS-kontroll

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

Tolkning: CAS bekrefter både sumformen og den faktoriserte formen.

Python-kontroll med SymPy

Python 3 - SymPy
import sympy as sp
x = sp.symbols("x", positive=True)
u = x**3
v = sp.log(x)
u_prime = sp.diff(u, x)
v_prime = sp.diff(v, x)
product_rule = sp.expand(u_prime*v + u*v_prime)
factored = sp.factor(product_rule)
direct = sp.diff(u*v, x)
print("u(x) =", u)
print("v(x) =", v)
print("u'(x) =", u_prime)
print("v'(x) =", v_prime)
print("Product-rule result =", product_rule)
print("Factored derivative =", factored)
print("Direct derivative check =", direct)
print("Difference check =", sp.simplify(direct - factored))
Utskrift fra Python:
u(x) = x**3
v(x) = log(x)
u'(x) = 3*x**2
v'(x) = 1/x
Product-rule result = 3*x**2*log(x) + x**2
Factored derivative = x**2*(3*log(x) + 1)
Direct derivative check = 3*x**2*log(x) + x**2
Difference check = 0

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

Vanlig feil: Å derivere produktet som produktet av de deriverte.
Sensorpunkt: Produktregelen skal vises eksplisitt, og \(x^3\cdot 1/x\) skal forenkles til \(x^2\).
Del 1 - Oppgave 1cDerivasjon - kjerneregelen

Oppgave 1c

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

Hva spør oppgaven om? Dette er en sammensatt eksponentialfunksjon. Vi bruker kjerneregelen på eksponenten.

Steg 1 - Identifiser kjernen

Sett \(u(x)=2x^2+x\). Da er \(h(x)=e^{u(x)}\).

Steg 2 - Deriver kjernen

\[u^{\prime}(x)=4x+1.\]

Steg 3 - Deriver den ytre funksjonen

Den deriverte av \(e^u\) med hensyn på \(u\) er \(e^u\).

Steg 4 - Bruk kjerneregelen

\[h^{\prime}(x)=e^{u(x)}u^{\prime}(x).\]

Steg 5 - Sett tilbake

\[h^{\prime}(x)=e^{2x^2+x}(4x+1).\]

Steg 6 - Skriv ryddig

\[h^{\prime}(x)=(4x+1)e^{2x^2+x}.\]

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
Derivative[exp(2x^2+x),x]
\((4x+1)e^{2x^2+x}\)

Tolkning: CAS multipliserer eksponentialfunksjonen med den deriverte av eksponenten.

Python-kontroll med SymPy

Python 3 - SymPy
import sympy as sp
x = sp.symbols("x", real=True)
inner = 2*x**2 + x
h = sp.exp(inner)
inner_prime = sp.diff(inner, x)
outer_derivative = sp.exp(inner)
chain_rule = sp.expand(inner_prime * outer_derivative)
direct = sp.diff(h, x)
print("Inner function =", inner)
print("Derivative of inner function =", inner_prime)
print("h(x) =", h)
print("Outer derivative evaluated at inner =", outer_derivative)
print("Chain-rule result =", chain_rule)
print("Direct SymPy derivative =", direct)
print("Difference check =", sp.simplify(chain_rule - direct))
Utskrift fra Python:
Inner function = 2*x**2 + x
Derivative of inner function = 4*x + 1
h(x) = exp(2*x**2 + x)
Outer derivative evaluated at inner = exp(2*x**2 + x)
Chain-rule result = 4*x*exp(x)*exp(2*x**2) + exp(x)*exp(2*x**2)
Direct SymPy derivative = (4*x + 1)*exp(2*x**2 + x)
Difference check = 0

Fasit: \(h^{\prime}(x)=(4x+1)e^{2x^2+x}\).

Vanlig feil: Å derivere \(e^{u(x)}\) uten å multiplisere med \(u^{\prime}(x)\).
Sensorpunkt: Kjernens deriverte \(4x+1\) må være med som faktor.
Del 1 - Oppgave 2aRasjonale uttrykk

Oppgave 2a

Oppgave: Skriv så enkelt som mulig: \[\frac{1}{2x-2}+\frac{2}{x-3}-\frac{x-2}{x^2-4x+3}.\]
Vis løsning

Hva spør oppgaven om? Vi faktoriserer nevnerne, finner fellesnevner og tar hensyn til hvilke x-verdier som ikke er tillatt.

Steg 1 - Faktoriser nevnerne

\[2x-2=2(x-1),\qquad x^2-4x+3=(x-1)(x-3).\]

Steg 2 - Finn fellesnevner

En fellesnevner er \(2(x-1)(x-3)\).

Steg 3 - Utvid første brøk

\[\frac{1}{2(x-1)}=\frac{x-3}{2(x-1)(x-3)}.\]

Steg 4 - Utvid andre brøk

\[\frac{2}{x-3}=\frac{4(x-1)}{2(x-1)(x-3)}.\]

Steg 5 - Utvid tredje brøk

\[-\frac{x-2}{(x-1)(x-3)}=-\frac{2(x-2)}{2(x-1)(x-3)}.\]

Steg 6 - Samle telleren

\[(x-3)+4(x-1)-2(x-2)=3x-3=3(x-1).\]

Steg 7 - Forkort

\[\frac{3(x-1)}{2(x-1)(x-3)}=\frac{3}{2(x-3)}.\]

Steg 8 - Behold restriksjonene

Fra originaluttrykket må \(x\neq1\) og \(x\neq3\), selv om faktoren \(x-1\) forkortes bort.

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
Factor[x^2-4x+3]
\((x-1)(x-3)\)
2
Simplify[1/(2x-2)+2/(x-3)-(x-2)/(x^2-4x+3)]
\(\frac{3}{2(x-3)}\)

Tolkning: Det forenklede uttrykket gjelder med de opprinnelige restriksjonene \(x eq1,3\).

Python-kontroll med SymPy

Python 3 - SymPy
import sympy as sp
x = sp.symbols("x", real=True)
original = 1/(2*x - 2) + 2/(x - 3) - (x - 2)/(x**2 - 4*x + 3)
factored_quadratic = sp.factor(x**2 - 4*x + 3)
common_denominator = 2*(x - 1)*(x - 3)
combined = sp.together(original)
simplified = sp.factor(combined)
print("Original expression =", original)
print("Factored quadratic denominator =", factored_quadratic)
print("Common denominator =", common_denominator)
print("Combined fraction =", combined)
print("Factored and simplified =", simplified)
print("Excluded x-values from original denominators =", [1, 3])
print("Check at x = 2: original =", sp.simplify(original.subs(x, 2)))
print("Check at x = 2: simplified =", sp.simplify(simplified.subs(x, 2)))
Utskrift fra Python:
Original expression = -(x - 2)/(x**2 - 4*x + 3) + 1/(2*x - 2) + 2/(x - 3)
Factored quadratic denominator = (x - 3)*(x - 1)
Common denominator = (x - 3)*(2*x - 2)
Combined fraction = (-2*(x - 3)*(x - 2)*(x - 1) + (x - 3)*(x**2 - 4*x + 3) + 4*(x - 1)*(x**2 - 4*x + 3))/(2*(x - 3)*(x - 1)*(x**2 - 4*x + 3))
Factored and simplified = 3/(2*(x - 3))
Excluded x-values from original denominators = [1, 3]
Check at x = 2: original = -3/2
Check at x = 2: simplified = -3/2

Fasit: \(\frac{3}{2(x-3)}\), med \(x\neq1\) og \(x\neq3\).

Vanlig feil: Å glemme at \(x=1\) fortsatt er utelukket etter forkorting.
Sensorpunkt: Sensor ser etter korrekt faktorisering, fellesnevner, fortegn og definisjonsrestriksjoner.
Del 1 - Oppgave 2bLogaritmeregler

Oppgave 2b

Oppgave: Skriv så enkelt som mulig: \[2\ln(xy^3)-\frac12\ln\!\left(\frac{x^4}{y^2}\right).\]
Vis løsning

Hva spør oppgaven om? Vi bruker produkt-, kvotient- og potensregelen for logaritmer. Uttrykket krever \(x>0\) og \(y>0\).

Steg 1 - Utvid første logaritme

\[\ln(xy^3)=\ln x+3\ln y.\]

Steg 2 - Multipliser med 2

\[2\ln(xy^3)=2\ln x+6\ln y.\]

Steg 3 - Utvid kvotientlogaritmen

\[\ln\!\left(\frac{x^4}{y^2}\right)=4\ln x-2\ln y.\]

Steg 4 - Multipliser med \(-\frac12\)

\[-\frac12(4\ln x-2\ln y)=-2\ln x+\ln y.\]

Steg 5 - Samle leddene

\[(2\ln x-2\ln x)+(6\ln y+\ln y)=7\ln y.\]

Steg 6 - Alternativ form

Ved potensregelen er \(7\ln y=\ln(y^7)\).

GeoGebra/CAS-kontroll

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

Tolkning: Alle \(\ln x\)-leddene kansellerer, mens \(\ln y\)-leddene gir koeffisienten 7.

Python-kontroll med SymPy

Python 3 - SymPy
import sympy as sp
x, y = sp.symbols("x y", positive=True)
original = 2*sp.log(x*y**3) - sp.Rational(1,2)*sp.log(x**4/y**2)
first_expansion = 2*(sp.log(x) + 3*sp.log(y))
second_expansion = -sp.Rational(1,2)*(4*sp.log(x) - 2*sp.log(y))
combined = sp.expand(first_expansion + second_expansion)
simplified = sp.simplify(combined)
print("Original expression =", original)
print("Expansion of first term =", first_expansion)
print("Expansion of second term =", second_expansion)
print("Combined logarithms =", combined)
print("Coefficient of log(x) =", 2 - 2)
print("Coefficient of log(y) =", 6 + 1)
print("Simplified result =", simplified)
print("Equivalent single logarithm =", sp.log(y**7))
Utskrift fra Python:
Original expression = 2*log(x*y**3) - log(x**4/y**2)/2
Expansion of first term = 2*log(x) + 6*log(y)
Expansion of second term = -2*log(x) + log(y)
Combined logarithms = 7*log(y)
Coefficient of log(x) = 0
Coefficient of log(y) = 7
Simplified result = 7*log(y)
Equivalent single logarithm = log(y**7)

Fasit: Uttrykket blir \(7\ln y=\ln(y^7)\), for \(x>0\) og \(y>0\).

Vanlig feil: Å la faktoren \(-\frac12\) virke bare på det første leddet i parentesen.
Sensorpunkt: Fortegnene og koeffisientene ved logaritmereglene må håndteres korrekt.
Del 1 - Oppgave 3aVektorer - komponenter

Oppgave 3a

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

Hva spør oppgaven om? En vektor fra et startpunkt til et sluttpunkt finnes ved sluttpunkt minus startpunkt.

Steg 1 - Finn \(\overrightarrow{AB}\)

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

Steg 2 - Regn ut komponentene

\[\overrightarrow{AB}=[1,-2].\]

Steg 3 - Finn \(\overrightarrow{BC}\)

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

Steg 4 - Regn ut komponentene

\[\overrightarrow{BC}=[4,2].\]

Steg 5 - Kontroller første vektor

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

Steg 6 - Kontroller andre vektor

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

GeoGebra/CAS-kontroll

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

Tolkning: GeoGebra beregner vektorene som sluttpunkt minus startpunkt.

Python-kontroll med SymPy

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

Fasit: \(\overrightarrow{AB}=[1,-2]\) og \(\overrightarrow{BC}=[4,2]\).

Vanlig feil: Å regne startpunkt minus sluttpunkt og dermed få motsatt retning.
Sensorpunkt: Begge komponentene skal beregnes med samme rekkefølge: slutt minus start.
Del 1 - Oppgave 3bVektorer - ortogonalitet

Oppgave 3b

Oppgave: Bruk vektorregning til å vise at \(\overrightarrow{AB}\perp\overrightarrow{BC}\).
Vis løsning

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

Steg 1 - Bruk vektorene fra a

\[\overrightarrow{AB}=[1,-2],\qquad \overrightarrow{BC}=[4,2].\]

Steg 2 - Skriv skalarproduktet

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

Steg 3 - Regn ut

\[4-4=0.\]

Steg 4 - Bruk ortogonalitetskriteriet

Siden skalarproduktet er 0, er vektorene ortogonale.

Steg 5 - Kontroller at vektorene ikke er nullvektorer

Begge har positiv lengde, så kriteriet kan brukes uten tvil.

Steg 6 - Konkluder geometrisk

Dermed er vinkelen \(\angle ABC=90^{\circ}\).

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
Dot[Vector[A,B],Vector[B,C]]
\(0\)
2
Angle[Vector[A,B],Vector[B,C]]
\(90^{\circ}\)

Tolkning: Null skalarprodukt bekrefter at vektorene er vinkelrette.

Python-kontroll med SymPy

Python 3 - SymPy
import sympy as sp
AB = sp.Matrix([1, -2])
BC = sp.Matrix([4, 2])
dot_product = AB.dot(BC)
length_AB = sp.sqrt(AB.dot(AB))
length_BC = sp.sqrt(BC.dot(BC))
cos_angle = sp.simplify(dot_product/(length_AB*length_BC))
print("AB =", list(AB))
print("BC =", list(BC))
print("AB dot BC =", dot_product)
print("Length of AB =", length_AB)
print("Length of BC =", length_BC)
print("cos(angle) =", cos_angle)
print("The vectors are perpendicular =", dot_product == 0)
Utskrift fra Python:
AB = [1, -2]
BC = [4, 2]
AB dot BC = 0
Length of AB = sqrt(5)
Length of BC = 2*sqrt(5)
cos(angle) = 0
The vectors are perpendicular = True

Fasit: \(\overrightarrow{AB}\cdot\overrightarrow{BC}=0\), derfor \(\overrightarrow{AB}\perp\overrightarrow{BC}\).

Vanlig feil: Å konkludere med parallellitet når skalarproduktet blir null.
Sensorpunkt: Sensor forventer både beregningen av skalarproduktet og den eksplisitte konklusjonen om 90 graders vinkel.
Del 1 - Oppgave 3cVektorer - parallellitet

Oppgave 3c

Oppgave: Punktet \(D(t,t^2+2)\) er gitt. Bestem \(t\) slik at \(\overrightarrow{CD}\parallel\overrightarrow{AB}\).
Vis løsning

Hva spør oppgaven om? Vi uttrykker \(\overrightarrow{CD}\) og bruker at parallelle vektorer har determinant lik null.

Steg 1 - Finn \(\overrightarrow{CD}\)

\[\overrightarrow{CD}=D-C=[t-3,\,t^2+2-(-1)]=[t-3,t^2+3].\]

Steg 2 - Bruk \(\overrightarrow{AB}\)

Fra a har vi \(\overrightarrow{AB}=[1,-2]\).

Steg 3 - Skriv parallellitetsbetingelsen

For \([u_1,u_2]\parallel[v_1,v_2]\) må \(u_1v_2-u_2v_1=0\).

Steg 4 - Sett inn

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

Steg 5 - Forenkle likningen

\[-2t+6-t^2-3=0\iff t^2+2t-3=0.\]

Steg 6 - Faktoriser

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

Steg 7 - Finn løsningene

\[t=-3\quad\text{eller}\quad t=1.\]

Steg 8 - Kontroller retningen

For \(t=1\) blir \(\overrightarrow{CD}=[-2,4]=-2\overrightarrow{AB}\). For \(t=-3\) blir \([-6,12]=-6\overrightarrow{AB}\).

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
Solve[Determinant[{{t-3,t^2+3},{1,-2}}]=0,t]
\(t=-3\) eller \(t=1\)

Tolkning: Begge verdiene gjør \(\overrightarrow{CD}\) til et skalarmultiplum av \(\overrightarrow{AB}\).

Python-kontroll med SymPy

Python 3 - SymPy
import sympy as sp
t = sp.symbols("t", real=True)
C = sp.Matrix([3, -1])
D = sp.Matrix([t, t**2 + 2])
AB = sp.Matrix([1, -2])
CD = D - C
determinant = sp.expand(CD[0]*AB[1] - CD[1]*AB[0])
solutions = sp.solve(sp.Eq(determinant, 0), t)
print("CD(t) =", list(CD))
print("AB =", list(AB))
print("Parallelism determinant =", determinant)
print("Factored equation =", sp.factor(determinant))
print("Solutions for t =", solutions)
for value in solutions:
    vector = CD.subs(t, value)
    print("t =", value, "gives CD =", list(vector), "and scale factor =", sp.simplify(vector[0]/AB[0]))
Utskrift fra Python:
CD(t) = [t - 3, t**2 + 3]
AB = [1, -2]
Parallelism determinant = -t**2 - 2*t + 3
Factored equation = -(t - 1)*(t + 3)
Solutions for t = [-3, 1]
t = -3 gives CD = [-6, 12] and scale factor = -6
t = 1 gives CD = [-2, 4] and scale factor = -2

Fasit: \(t=-3\) eller \(t=1\).

Vanlig feil: Å kreve at de parallelle vektorene må være helt like; de kan være alle ikke-null skalarmultipler.
Sensorpunkt: Begge løsningene skal finnes og kontrolleres som skalarmultipler av \(\overrightarrow{AB}\).
Del 1 - Oppgave 4aPolynom - faktorsetningen

Oppgave 4a

Oppgave: Funksjonen er \(f(x)=x^3+kx+12\). Bestem \(k\) slik at divisjonen \(f(x):(x-1)\) går opp.
Vis løsning

Hva spør oppgaven om? Faktor-/restsetningen sier at divisjonen med \(x-1\) går opp akkurat når \(f(1)=0\).

Steg 1 - Bruk restsetningen

Kravet er \(f(1)=0\).

Steg 2 - Sett inn \(x=1\)

\[f(1)=1^3+k\cdot1+12.\]

Steg 3 - Forenkle

\[f(1)=k+13.\]

Steg 4 - Sett resten lik null

\[k+13=0.\]

Steg 5 - Løs likningen

\[k=-13.\]

Steg 6 - Kontroller

Med \(k=-13\) får vi \(f(1)=1-13+12=0\).

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
Solve[(1)^3+k(1)+12=0,k]
\(k=-13\)

Tolkning: CAS finner parameterverdien som gjør resten ved divisjon med \(x-1\) lik null.

Python-kontroll med SymPy

Python 3 - SymPy
import sympy as sp
x, k = sp.symbols("x k", real=True)
f = x**3 + k*x + 12
remainder_at_one = sp.expand(f.subs(x, 1))
solution = sp.solve(sp.Eq(remainder_at_one, 0), k)
selected_k = solution[0]
controlled_polynomial = sp.expand(f.subs(k, selected_k))
print("f(x) =", f)
print("Remainder when dividing by x - 1 is f(1) =", remainder_at_one)
print("Equation for k:", remainder_at_one, "= 0")
print("Solution for k =", solution)
print("Polynomial with this k =", controlled_polynomial)
print("Check f(1) =", controlled_polynomial.subs(x, 1))
Utskrift fra Python:
f(x) = k*x + x**3 + 12
Remainder when dividing by x - 1 is f(1) = k + 13
Equation for k: k + 13 = 0
Solution for k = [-13]
Polynomial with this k = x**3 - 13*x + 12
Check f(1) = 0

Fasit: \(k=-13\).

Vanlig feil: Å utføre lang polynomdivisjon før parameteren er bestemt, uten å bruke restsetningen.
Sensorpunkt: Det må komme tydelig fram hvorfor \(f(1)=0\) er riktig betingelse.
Del 1 - Oppgave 4bPolynomdivisjon og faktorisering

Oppgave 4b

Oppgave: Sett inn verdien for \(k\) fra a, og skriv \(f(x)\) som et produkt av lineære faktorer.
Vis løsning

Hva spør oppgaven om? Vi setter \(k=-13\), deler med den kjente faktoren \(x-1\) og faktoriserer andregradsfaktoren.

Steg 1 - Sett inn parameteren

\[f(x)=x^3-13x+12.\]

Steg 2 - Del med \(x-1\)

Polynomdivisjonen gir \[x^3-13x+12=(x-1)(x^2+x-12).\]

Steg 3 - Faktoriser andregradsuttrykket

Vi søker to tall med produkt \(-12\) og sum \(1\): \(4\) og \(-3\).

Steg 4 - Skriv faktoriseringen

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

Steg 5 - Samle alle faktorene

\[f(x)=(x-1)(x+4)(x-3).\]

Steg 6 - Les av nullpunktene

Nullpunktene er \(x=1\), \(x=-4\) og \(x=3\).

Steg 7 - Kontroller ved utvidelse

Utvidelse gir \(x^3-13x+12\), slik den skal.

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
PolynomialDivision[x^3-13x+12,x-1]
Kvotient \(x^2+x-12\), rest 0
2
Factor[x^3-13x+12]
\((x-1)(x+4)(x-3)\)

Tolkning: CAS bekrefter både divisjonen og full faktorisering.

Python-kontroll med SymPy

Python 3 - SymPy
import sympy as sp
x = sp.symbols("x", real=True)
f = x**3 - 13*x + 12
quotient, remainder = sp.div(f, x - 1)
factored_quadratic = sp.factor(quotient)
full_factorization = sp.factor(f)
expanded_check = sp.expand(full_factorization)
roots = sp.solve(sp.Eq(f, 0), x)
print("f(x) =", f)
print("Quotient after division by x - 1 =", quotient)
print("Remainder =", remainder)
print("Factored quotient =", factored_quadratic)
print("Full factorization =", full_factorization)
print("Roots =", roots)
print("Expansion check =", expanded_check)
print("Difference from original =", sp.simplify(expanded_check - f))
Utskrift fra Python:
f(x) = x**3 - 13*x + 12
Quotient after division by x - 1 = x**2 + x - 12
Remainder = 0
Factored quotient = (x - 3)*(x + 4)
Full factorization = (x - 3)*(x - 1)*(x + 4)
Roots = [-4, 1, 3]
Expansion check = x**3 - 13*x + 12
Difference from original = 0

Fasit: \(f(x)=(x-1)(x+4)(x-3)\).

Vanlig feil: Å stoppe etter \((x-1)(x^2+x-12)\) selv om oppgaven ber om lineære faktorer.
Sensorpunkt: Alle tre lineære faktorene og en kontroll ved utvidelse bør framgå.
Del 1 - Oppgave 4cRasjonal ulikhet

Oppgave 4c

Oppgave: Løs ulikheten \[\frac{x^2+x-12}{x-1}\ge 0.\]
Vis løsning

Hva spør oppgaven om? Vi faktoriserer telleren og lager en fortegnsvurdering rundt nullpunktene og den utelukkede verdien.

Steg 1 - Faktoriser telleren

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

Steg 2 - Skriv uttrykket faktorisert

\[\frac{(x+4)(x-3)}{x-1}\ge0.\]

Steg 3 - Finn kritiske punkter

Telleren er null ved \(x=-4\) og \(x=3\). Nevneren er null ved \(x=1\).

Steg 4 - Del tallinjen

Intervallene er \(( -\infty,-4)\), \((-4,1)\), \((1,3)\) og \((3,\infty)\).

Steg 5 - Bestem fortegn

Uttrykket er negativt, positivt, negativt og positivt i de fire intervallene i denne rekkefølgen.

Steg 6 - Ta med nullpunktene

Fordi ulikheten er \(\ge0\), tas \(-4\) og \(3\) med.

Steg 7 - Utelukk nevnerens nullpunkt

\(x=1\) kan aldri tas med fordi uttrykket ikke er definert der.

Steg 8 - Skriv løsningsmengden

\[x\in[-4,1)\cup[3,\infty).\]

GeoGebra/CAS-kontroll

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

Tolkning: CAS tar med tellerens nullpunkter, men utelukker nevnerens nullpunkt.

Python-kontroll med SymPy

Python 3 - SymPy
import sympy as sp
x = sp.symbols("x", real=True)
expression = (x**2 + x - 12)/(x - 1)
factored = sp.factor(expression)
critical_points = [-4, 1, 3]
test_points = [-5, 0, 2, 4]
signs = [sp.sign(sp.N(expression.subs(x, p))) for p in test_points]
solution = sp.solve_univariate_inequality(expression >= 0, x)
print("Expression =", expression)
print("Factored expression =", factored)
print("Critical points =", critical_points)
print("Test points =", test_points)
print("Signs on the four intervals =", signs)
print("Numerator at x = -4 =", (x**2 + x - 12).subs(x, -4))
print("Numerator at x = 3 =", (x**2 + x - 12).subs(x, 3))
print("Denominator at x = 1 =", (x - 1).subs(x, 1))
print("Solution set =", solution)
Utskrift fra Python:
Expression = (x**2 + x - 12)/(x - 1)
Factored expression = (x - 3)*(x + 4)/(x - 1)
Critical points = [-4, 1, 3]
Test points = [-5, 0, 2, 4]
Signs on the four intervals = [-1, 1, -1, 1]
Numerator at x = -4 = 0
Numerator at x = 3 = 0
Denominator at x = 1 = 0
Solution set = (3 <= x) | ((-4 <= x) & (x < 1))

Fasit: \(x\in[-4,1)\cup[3,\infty)\).

Vanlig feil: Å inkludere \(x=1\) fordi fortegnsskiftet tegnes på tallinjen.
Sensorpunkt: Endepunktene må ha riktige åpne/lukkede parenteser.
Del 1 - Oppgave 5aSannsynlighet - produktregelen

Oppgave 5a

Oppgave: 40 % av laderne kommer fra A, og 3 % av laderne fra A er defekte. Bestem sannsynligheten for at en tilfeldig lader kommer fra A og er defekt.
Vis løsning

Hva spør oppgaven om? Vi skal finne en snittsannsynlighet ved å multiplisere sannsynligheten for A med den betingede sannsynligheten for defekt gitt A.

Steg 1 - Definer hendelser

La \(A\) bety «fra leverandør A» og \(D\) bety «defekt».

Steg 2 - Les av sannsynlighetene

\[P(A)=0{,}40,\qquad P(D\mid A)=0{,}03.\]

Steg 3 - Bruk produktregelen

\[P(A\cap D)=P(A)P(D\mid A).\]

Steg 4 - Sett inn

\[P(A\cap D)=0{,}40\cdot0{,}03.\]

Steg 5 - Regn ut

\[P(A\cap D)=0{,}012.\]

Steg 6 - Gjør om til prosent

\[0{,}012=1{,}2\,\%.\]

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
0.40*0.03
\(0.012\)

Tolkning: Produktet er sannsynligheten for at begge hendelsene skjer samtidig.

Python-kontroll med SymPy

Python 3 - SymPy
from fractions import Fraction
p_A = Fraction(40, 100)
p_defective_given_A = Fraction(3, 100)
p_A_and_defective = p_A * p_defective_given_A
print("P(A) =", p_A, "=", float(p_A))
print("P(defective | A) =", p_defective_given_A, "=", float(p_defective_given_A))
print("Product rule: P(A and defective) = P(A) * P(defective | A)")
print("Exact probability =", p_A_and_defective)
print("Decimal probability =", float(p_A_and_defective))
print("Percentage =", 100*float(p_A_and_defective), "%")
Utskrift fra Python:
P(A) = 2/5 = 0.4
P(defective | A) = 3/100 = 0.03
Product rule: P(A and defective) = P(A) * P(defective | A)
Exact probability = 3/250
Decimal probability = 0.012
Percentage = 1.2 %

Fasit: Sannsynligheten er \(0{,}012=1{,}2\,\%\).

Vanlig feil: Å svare 3 %, som bare er sannsynligheten for defekt betinget på at laderen allerede er fra A.
Sensorpunkt: Sensor forventer produktregelen og korrekt omregning mellom desimaltall og prosent.
Del 1 - Oppgave 5bBetinget sannsynlighet - Bayes

Oppgave 5b

Oppgave: Bestem sannsynligheten for at en lader som er defekt, kommer fra leverandør A.
Vis løsning

Hva spør oppgaven om? Vi trenger \(P(A\mid D)\). Først finner vi total sannsynlighet for defekt, og deretter bruker vi Bayes’ setning.

Steg 1 - Skriv sannsynlighetene

\[P(A)=0{,}40,\ P(B)=0{,}60,\ P(D\mid A)=0{,}03,\ P(D\mid B)=0{,}02.\]

Steg 2 - Finn defekt og A

Fra a har vi \(P(A\cap D)=0{,}012\).

Steg 3 - Finn defekt og B

\[P(B\cap D)=0{,}60\cdot0{,}02=0{,}012.\]

Steg 4 - Finn total defektsannsynlighet

\[P(D)=0{,}012+0{,}012=0{,}024.\]

Steg 5 - Bruk definisjonen av betinget sannsynlighet

\[P(A\mid D)=\frac{P(A\cap D)}{P(D)}.\]

Steg 6 - Sett inn

\[P(A\mid D)=\frac{0{,}012}{0{,}024}=0{,}5.\]

Steg 7 - Tolk svaret

Blant de defekte laderne kommer halvparten fra A.

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
0.40*0.03/(0.40*0.03+0.60*0.02)
\(0.5\)

Tolkning: Telleren er defekt fra A; nevneren er alle defekte ladere.

Python-kontroll med SymPy

Python 3 - SymPy
from fractions import Fraction
p_A = Fraction(40, 100)
p_B = Fraction(60, 100)
p_D_given_A = Fraction(3, 100)
p_D_given_B = Fraction(2, 100)
p_A_and_D = p_A*p_D_given_A
p_B_and_D = p_B*p_D_given_B
p_D = p_A_and_D + p_B_and_D
p_A_given_D = p_A_and_D/p_D
print("P(A and D) =", p_A_and_D, "=", float(p_A_and_D))
print("P(B and D) =", p_B_and_D, "=", float(p_B_and_D))
print("P(D) =", p_D, "=", float(p_D))
print("Bayes numerator =", p_A_and_D)
print("Bayes denominator =", p_D)
print("P(A | D) =", p_A_given_D)
print("Percentage =", 100*float(p_A_given_D), "%")
Utskrift fra Python:
P(A and D) = 3/250 = 0.012
P(B and D) = 3/250 = 0.012
P(D) = 3/125 = 0.024
Bayes numerator = 3/250
Bayes denominator = 3/125
P(A | D) = 1/2
Percentage = 50.0 %

Fasit: \(P(A\mid D)=0{,}50=50\,\%\).

Vanlig feil: Å dele på \(P(A)\) i stedet for på den totale sannsynligheten \(P(D)\).
Sensorpunkt: Nevneren må inneholde defekte ladere fra begge leverandører.
Del 1 - Oppgave 6aEksponentiallikning - nullpunkter

Oppgave 6a

Oppgave: Funksjonen er \[f(x)=e^{2x}-4e^x+3.\] Bestem nullpunktene til \(f\).
Vis løsning

Hva spør oppgaven om? Uttrykket er en andregradslikning i \(e^x\). Vi setter \(u=e^x\), der \(u>0\).

Steg 1 - Sett \(u=e^x\)

Da er \(e^{2x}=(e^x)^2=u^2\).

Steg 2 - Skriv likningen

\[u^2-4u+3=0.\]

Steg 3 - Faktoriser

\[(u-1)(u-3)=0.\]

Steg 4 - Finn u-verdiene

\[u=1\quad\text{eller}\quad u=3.\]

Steg 5 - Gå tilbake til x

\[e^x=1\Rightarrow x=0,\qquad e^x=3\Rightarrow x=\ln3.\]

Steg 6 - Skriv nullpunktene

Grafen skjærer x-aksen i \((0,0)\) og \((\ln3,0)\).

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
Solve[exp(2x)-4exp(x)+3=0,x]
\(x=0\) eller \(x=\ln3\)

Tolkning: CAS finner de to reelle nullpunktene.

Python-kontroll med SymPy

Python 3 - SymPy
import sympy as sp
x, u = sp.symbols("x u", real=True)
f = sp.exp(2*x) - 4*sp.exp(x) + 3
quadratic_in_u = u**2 - 4*u + 3
u_roots = sp.solve(sp.Eq(quadratic_in_u, 0), u)
x_roots = sp.solve(sp.Eq(f, 0), x)
print("f(x) =", f)
print("Substitution u = exp(x) gives =", quadratic_in_u)
print("Factored quadratic =", sp.factor(quadratic_in_u))
print("Solutions for u =", u_roots)
print("Solutions for x =", x_roots)
for root in x_roots:
    print("f(", root, ") =", sp.simplify(f.subs(x, root)))
print("Decimal x-values =", [sp.N(root, 10) for root in x_roots])
Utskrift fra Python:
f(x) = exp(2*x) - 4*exp(x) + 3
Substitution u = exp(x) gives = u**2 - 4*u + 3
Factored quadratic = (u - 3)*(u - 1)
Solutions for u = [1, 3]
Solutions for x = [0, log(3)]
f( 0 ) = 0
f( log(3) ) = 0
Decimal x-values = [0, 1.098612289]

Fasit: Nullpunktene er \(x=0\) og \(x=\ln3\approx1{,}10\).

Vanlig feil: Å løse \(e^{2x}\) som om det var \(2e^x\).
Sensorpunkt: Substitusjonen \(u=e^x\) og tilbakeføringen til x må vises.
Del 1 - Oppgave 6bEkstremalpunkt

Oppgave 6b

Oppgave: Bestem eventuelle toppunkt og bunnpunkt på grafen til \(f(x)=e^{2x}-4e^x+3\).
Vis løsning

Hva spør oppgaven om? Vi finner stasjonære punkter ved \(f^{\prime}(x)=0\) og klassifiserer dem med den andrederiverte.

Steg 1 - Deriver

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

Steg 2 - Sett den deriverte lik null

\[2e^x(e^x-2)=0.\]

Steg 3 - Bruk at \(e^x>0\)

Derfor må \(e^x-2=0\), altså \(x=\ln2\).

Steg 4 - Finn y-verdien

\[f(\ln2)=2^2-4\cdot2+3=-1.\]

Steg 5 - Finn andrederivert

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

Steg 6 - Klassifiser

\[f^{\prime\prime}(\ln2)=16-8=8>0.\] Punktet er derfor et bunnpunkt.

Steg 7 - Konkluder

Grafen har bunnpunkt \((\ln2,-1)\) og ikke noe toppunkt.

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
Extremum[exp(2x)-4exp(x)+3]
Bunnpunkt \((\ln2,-1)\)

Tolkning: Den positive andrederiverte i det stasjonære punktet bekrefter minimum.

Python-kontroll med SymPy

Python 3 - SymPy
import sympy as sp
x = sp.symbols("x", real=True)
f = sp.exp(2*x) - 4*sp.exp(x) + 3
f_prime = sp.diff(f, x)
f_second = sp.diff(f_prime, x)
stationary = sp.solve(sp.Eq(f_prime, 0), x)
print("f(x) =", f)
print("f'(x) =", sp.factor(f_prime))
print("Stationary x-values =", stationary)
for value in stationary:
    print("At x =", value, "the y-value is", sp.simplify(f.subs(x, value)))
    print("Second derivative there =", sp.simplify(f_second.subs(x, value)))
print("f''(x) =", sp.factor(f_second))
print("Classification: positive second derivative means a local minimum")
Utskrift fra Python:
f(x) = exp(2*x) - 4*exp(x) + 3
f'(x) = 2*(exp(x) - 2)*exp(x)
Stationary x-values = [log(2)]
At x = log(2) the y-value is -1
Second derivative there = 8
f''(x) = 4*(exp(x) - 1)*exp(x)
Classification: positive second derivative means a local minimum

Fasit: Bunnpunktet er \((\ln2,-1)\). Det finnes ikke noe toppunkt.

Vanlig feil: Å kalle punktet et toppunkt uten å kontrollere fortegn eller andrederivert.
Sensorpunkt: Både koordinater og klassifisering skal være med.
Del 1 - Oppgave 6cVendepunkt

Oppgave 6c

Oppgave: Bestem eventuelle vendepunkt på grafen til \(f(x)=e^{2x}-4e^x+3\).
Vis løsning

Hva spør oppgaven om? Et vendepunkt krever at krumningen skifter fortegn. Vi finner kandidater fra \(f^{\prime\prime}(x)=0\).

Steg 1 - Bruk andrederiverten

\[f^{\prime\prime}(x)=4e^{2x}-4e^x=4e^x(e^x-1).\]

Steg 2 - Sett lik null

\[4e^x(e^x-1)=0.\]

Steg 3 - Løs

Fordi \(e^x>0\), får vi \(e^x=1\), altså \(x=0\).

Steg 4 - Finn y-verdien

\[f(0)=1-4+3=0.\]

Steg 5 - Kontroller fortegnsskifte

For \(x<0\) er \(e^x-1<0\), så \(f^{\prime\prime}<0\). For \(x>0\) er \(f^{\prime\prime}>0\).

Steg 6 - Konkluder

Krumningen skifter fra konkav ned til konkav opp i \((0,0)\).

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
Solve[Derivative[exp(2x)-4exp(x)+3,x,2]=0,x]
\(x=0\)
2
Substitute[exp(2x)-4exp(x)+3,x,0]
\(0\)

Tolkning: Fortegnsskiftet i andrederiverten gjør kandidaten til et reelt vendepunkt.

Python-kontroll med SymPy

Python 3 - SymPy
import sympy as sp
x = sp.symbols("x", real=True)
f = sp.exp(2*x) - 4*sp.exp(x) + 3
f_second = sp.factor(sp.diff(f, x, 2))
candidates = sp.solve(sp.Eq(f_second, 0), x)
left_test = sp.N(f_second.subs(x, -1))
right_test = sp.N(f_second.subs(x, 1))
print("f''(x) =", f_second)
print("Candidate x-values =", candidates)
for value in candidates:
    print("Candidate point =", (value, sp.simplify(f.subs(x, value))))
print("f''(-1) =", left_test)
print("f''(1) =", right_test)
print("Sign change from negative to positive =", left_test < 0 and right_test > 0)
print("Inflection point =", (0, f.subs(x, 0)))
Utskrift fra Python:
f''(x) = 4*(exp(x) - 1)*exp(x)
Candidate x-values = [0]
Candidate point = (0, 0)
f''(-1) = -0.930176631739319
f''(1) = 18.6830970818864
Sign change from negative to positive = True
Inflection point = (0, 0)

Fasit: Vendepunktet er \((0,0)\).

Vanlig feil: Å sette \(f^{\prime}(x)=0\) i stedet for \(f^{\prime\prime}(x)=0\), eller å glemme å kontrollere fortegnsskifte.
Sensorpunkt: Det må dokumenteres at andrederiverten faktisk skifter fortegn.
Del 1 - Oppgave 6dGrafskisse

Oppgave 6d

Oppgave: Lag en skisse av grafen til \(f(x)=e^{2x}-4e^x+3\).
Vis løsning

Hva spør oppgaven om? Vi kombinerer nullpunkter, bunnpunkt, vendepunkt, monotoni, krumning og endeadferd.

Steg 1 - Marker nullpunktene

Grafen går gjennom \((0,0)\) og \((\ln3,0)\).

Steg 2 - Marker bunnpunktet

Bunnpunktet er \((\ln2,-1)\).

Steg 3 - Marker vendepunktet

Vendepunktet er \((0,0)\), som samtidig er et nullpunkt.

Steg 4 - Beskriv monotonien

Fordi \(f^{\prime}(x)=2e^x(e^x-2)\), avtar grafen for \(x<\ln2\) og øker for \(x>\ln2\).

Steg 5 - Beskriv krumningen

Grafen er konkav ned for \(x<0\) og konkav opp for \(x>0\).

Steg 6 - Finn venstre endeadferd

Når \(x\to-\infty\), går \(e^x\to0\), og dermed \(f(x)\to3\). Linjen \(y=3\) er en horisontal asymptote mot venstre.

Steg 7 - Finn høyre endeadferd

Når \(x\to\infty\), dominerer \(e^{2x}\), og \(f(x)\to\infty\).

Steg 8 - Tegn en sammenhengende kurve

Skissen nedenfor tilfredsstiller alle disse egenskapene.

Illustrasjon til Oppgave 6d
Kontrollert grafskisse med nullpunkter, bunnpunkt, vendepunkt og asymptote.

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
f(x)=exp(2x)-4exp(x)+3
Tegn graf
2
Extremum[f]
\((\ln2,-1)\)
3
InflectionPoint[f]
\((0,0)\)

Tolkning: Grafen visualiserer de analytisk bestemte nøkkelpunktene.

Python-kontroll med SymPy

Python 3 - SymPy
import sympy as sp
x = sp.symbols("x", real=True)
f = sp.exp(2*x) - 4*sp.exp(x) + 3
f_prime = sp.factor(sp.diff(f, x))
f_second = sp.factor(sp.diff(f, x, 2))
zeros = sp.solve(sp.Eq(f, 0), x)
minimum_x = sp.log(2)
inflection_x = sp.Integer(0)
left_limit = sp.limit(f, x, -sp.oo)
right_limit = sp.limit(f, x, sp.oo)
print("Zeros =", zeros)
print("Minimum point =", (minimum_x, sp.simplify(f.subs(x, minimum_x))))
print("Inflection point =", (inflection_x, f.subs(x, inflection_x)))
print("f'(x) =", f_prime)
print("f''(x) =", f_second)
print("Limit as x -> -infinity =", left_limit)
print("Limit as x -> infinity =", right_limit)
print("Horizontal asymptote on the left: y =", left_limit)
Utskrift fra Python:
Zeros = [0, log(3)]
Minimum point = (log(2), -1)
Inflection point = (0, 0)
f'(x) = 2*(exp(x) - 2)*exp(x)
f''(x) = 4*(exp(x) - 1)*exp(x)
Limit as x -> -infinity = 3
Limit as x -> infinity = oo
Horizontal asymptote on the left: y = 3

Fasit: Skissen går mot \(y=3\) mot venstre, passerer \((0,0)\), har bunnpunkt \((\ln2,-1)\), passerer \((\ln3,0)\) og går mot \(\infty\).

Vanlig feil: Å tegne grafen symmetrisk som en parabel; dette er en eksponentialfunksjon med ulik endeadferd mot venstre og høyre.
Sensorpunkt: Alle nøkkelpunkter og riktig monoton/krumningsmessig form skal være synlige.
Del 1 - Oppgave 7aFormlikhet

Oppgave 7a

Oppgave: En rettvinklet trekant har sider \(a\), \(b\) og hypotenus \(c\). Sidene multipliseres henholdsvis med \(c\), \(b\) og \(a\) for å lage tre nye trekanter. Begrunn at de tre trekantene er formlike.
Vis løsning

Hva spør oppgaven om? Hver ny trekant er en skalering av den opprinnelige trekanten med én fast faktor.

Steg 1 - Første trekant

Den første har sider \(ac\), \(bc\) og \(c^2\). Dette er \((a,b,c)\) multiplisert med \(c\).

Steg 2 - Andre trekant

Den andre har sider \(ab\), \(b^2\) og \(bc\). Dette er \((a,b,c)\) multiplisert med \(b\).

Steg 3 - Tredje trekant

Den tredje har sider \(a^2\), \(ab\) og \(ac\). Dette er \((a,b,c)\) multiplisert med \(a\).

Steg 4 - Sammenlign sideforholdene

I alle trekantene er forholdet mellom samsvarende sider \(a:b:c\).

Steg 5 - Bruk SSS-kriteriet

Når alle tre samsvarende sidepar er proporsjonale, er trekantene formlike.

Steg 6 - Konkluder om vinklene

De tre trekantene har derfor de samme vinklene som den opprinnelige rettvinklede trekanten.

Illustrasjon til Oppgave 7a
De tre trekantene er skaleringer av den samme rettvinklede trekanten.

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
Polygon[(0,0),(a*c,0),(0,b*c)]
Trekant skalert med \(c\)
2
Dilate[original,b]
Trekant skalert med \(b\)
3
Dilate[original,a]
Trekant skalert med \(a\)

Tolkning: Skalering bevarer vinkler og gir proporsjonale sider.

Python-kontroll med SymPy

Python 3 - SymPy
import sympy as sp
a, b, c = sp.symbols("a b c", positive=True)
original = sp.Matrix([a, b, c])
triangle_1 = c*original
triangle_2 = b*original
triangle_3 = a*original
ratios_12 = [sp.simplify(triangle_1[i]/triangle_2[i]) for i in range(3)]
ratios_13 = [sp.simplify(triangle_1[i]/triangle_3[i]) for i in range(3)]
print("Original side vector =", list(original))
print("Triangle scaled by c =", list(triangle_1))
print("Triangle scaled by b =", list(triangle_2))
print("Triangle scaled by a =", list(triangle_3))
print("Corresponding ratios triangle 1 / triangle 2 =", ratios_12)
print("Corresponding ratios triangle 1 / triangle 3 =", ratios_13)
print("All three corresponding ratios are constant within each comparison")
Utskrift fra Python:
Original side vector = [a, b, c]
Triangle scaled by c = [a*c, b*c, c**2]
Triangle scaled by b = [a*b, b**2, b*c]
Triangle scaled by a = [a**2, a*b, a*c]
Corresponding ratios triangle 1 / triangle 2 = [c/b, c/b, c/b]
Corresponding ratios triangle 1 / triangle 3 = [c/a, c/a, c/a]
All three corresponding ratios are constant within each comparison

Fasit: De tre trekantene er formlike etter SSS fordi de er skaleringer av samme trekant med faktorene \(c\), \(b\) og \(a\).

Vanlig feil: Å sammenligne sider som ikke svarer til hverandre.
Sensorpunkt: Argumentet må tydelig vise en felles skaleringsfaktor for hver trekant eller tre like sideforhold.
Del 1 - Oppgave 7bVinkelargument

Oppgave 7b

Oppgave: De tre trekantene settes sammen som i figuren. Begrunn at \(E\), \(D\) og \(C\) ligger på en rett linje.
Vis løsning

Hva spør oppgaven om? Vi bruker de to spisse vinklene i den opprinnelige rettvinklede trekanten og vinkelsummen rundt punktet D.

Steg 1 - Navngi de spisse vinklene

La de spisse vinklene i den opprinnelige trekanten være \(\alpha\) og \(\beta\). Da er \(\alpha+\beta=90^{\circ}\).

Steg 2 - Bruk formlikheten på venstre trekant

Vinkelen \(\angle EDA\) svarer til den ene spisse vinkelen, for eksempel \(\beta\).

Steg 3 - Bruk den midterste trekanten

Vinkelen \(\angle ADB\) ligger mellom katetene \(ac\) og \(bc\), og er derfor \(90^{\circ}\).

Steg 4 - Bruk formlikheten på høyre trekant

Vinkelen \(\angle BDC\) svarer til den andre spisse vinkelen \(\alpha\).

Steg 5 - Summer vinklene ved D

\[\angle EDA+\angle ADB+\angle BDC=\beta+90^{\circ}+\alpha.\]

Steg 6 - Bruk \(\alpha+\beta=90^{\circ}\)

\[\beta+90^{\circ}+\alpha=180^{\circ}.\]

Steg 7 - Konkluder

En samlet vinkel på \(180^{\circ}\) betyr at strålene \(DE\) og \(DC\) er motsatt rettet. Dermed er E, D og C kollineære.

Illustrasjon til Oppgave 7b
Vinklene ved D summerer seg til en rett vinkel.

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
alpha+90deg+beta
\(180^{\circ}\) når \(\alpha+\beta=90^{\circ}\)

Tolkning: Vinkelsummen på oversiden av D er en rett vinkel på 180 grader.

Python-kontroll med SymPy

Python 3 - SymPy
import sympy as sp
alpha, beta = sp.symbols("alpha beta", positive=True)
right_triangle_relation = sp.Eq(alpha + beta, 90)
angle_EDA = beta
angle_ADB = 90
angle_BDC = alpha
sum_at_D = angle_EDA + angle_ADB + angle_BDC
substituted_sum = sp.simplify(sum_at_D.subs(beta, 90 - alpha))
print("Acute-angle relation =", right_triangle_relation)
print("Angle EDA =", angle_EDA)
print("Angle ADB =", angle_ADB)
print("Angle BDC =", angle_BDC)
print("Sum before substitution =", sum_at_D)
print("Sum using beta = 90 - alpha =", substituted_sum)
print("A 180-degree sum means E, D and C are collinear")
Utskrift fra Python:
Acute-angle relation = Eq(alpha + beta, 90)
Angle EDA = beta
Angle ADB = 90
Angle BDC = alpha
Sum before substitution = alpha + beta + 90
Sum using beta = 90 - alpha = 180
A 180-degree sum means E, D and C are collinear

Fasit: \(\angle EDC=180^{\circ}\), derfor ligger \(E\), \(D\) og \(C\) på en rett linje.

Vanlig feil: Å anta kollinearitet bare fordi figuren ser slik ut.
Sensorpunkt: Vinkelargumentet med \(\alpha+\beta=90^{\circ}\) må være eksplisitt.
Del 1 - Oppgave 7cGeometrisk bevis for Pytagoras

Oppgave 7c

Oppgave: Forklar at firkanten \(ABCE\) er et rektangel. Hvordan viser dette at Pytagoras’ setning gjelder?
Vis løsning

Hva spør oppgaven om? Vi viser først at ytterfiguren er et rektangel, og sammenligner deretter lengdene av de motstående sidene.

Steg 1 - Finn de loddrette sidene

I de ytre rettvinklede trekantene er \(AE=ab\) og \(BC=ab\). Dermed er \(AE=BC\).

Steg 2 - Vis parallellitet

Både \(AE\) og \(BC\) står vinkelrett på den rette linjen \(EC\), og er derfor parallelle.

Steg 3 - Bruk parallellogramkriteriet

Et firkant med ett par motstående sider som både er parallelle og like lange, er et parallellogram.

Steg 4 - Bruk den rette vinkelen

Parallellogrammet har en rett vinkel ved E (og C), og er derfor et rektangel.

Steg 5 - Sammenlign motstående sider

I et rektangel er \(AB=EC\).

Steg 6 - Les av lengden AB

Den nederste siden er hypotenusen i den midterste trekanten og har lengde \(AB=c^2\).

Steg 7 - Les av lengden EC

\[EC=ED+DC=a^2+b^2.\]

Steg 8 - Sett likt

\[c^2=a^2+b^2.\] Dette er Pytagoras’ setning.

Illustrasjon til Oppgave 7c
Rektangelets motstående sider gir likheten mellom c² og a²+b².

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
Length[AB]
\(c^2\)
2
Length[EC]
\(a^2+b^2\)
3
Equation[Length[AB]=Length[EC]]
\(c^2=a^2+b^2\)

Tolkning: Likheten mellom motstående sider i rektangelet gir Pytagoras direkte.

Python-kontroll med SymPy

Python 3 - SymPy
import sympy as sp
a, b, c = sp.symbols("a b c", positive=True)
AE = a*b
BC = a*b
AB = c**2
ED = a**2
DC = b**2
EC = sp.expand(ED + DC)
rectangle_side_equation = sp.Eq(AB, EC)
print("AE =", AE)
print("BC =", BC)
print("AE equals BC =", sp.simplify(AE - BC) == 0)
print("AB =", AB)
print("ED =", ED)
print("DC =", DC)
print("EC = ED + DC =", EC)
print("Opposite sides in the rectangle give =", rectangle_side_equation)
print("Rearranged Pythagorean statement =", sp.Eq(a**2 + b**2, c**2))
Utskrift fra Python:
AE = a*b
BC = a*b
AE equals BC = True
AB = c**2
ED = a**2
DC = b**2
EC = ED + DC = a**2 + b**2
Opposite sides in the rectangle give = Eq(c**2, a**2 + b**2)
Rearranged Pythagorean statement = Eq(a**2 + b**2, c**2)

Fasit: Fordi \(ABCE\) er et rektangel, er \(AB=EC\), altså \(c^2=a^2+b^2\).

Vanlig feil: Å bruke Pytagoras for å bevise at figuren er et rektangel; da blir argumentet sirkulært.
Sensorpunkt: Rektangelegenskapen skal begrunnes uavhengig før sidelengdene sammenlignes.

Del 2 - med hjelpemidler

Del 2 - Oppgave 1aSirkelgeometri - periferivinkel

Oppgave 1a

Oppgave: En firkant \(ABCD\) er innskrevet i en sirkel med sentrum S. La \(u=\angle BSD\). Forklar at \[\angle DCB=180^{\circ}-\frac12u.\]
Vis løsning

Hva spør oppgaven om? Periferivinkelen ved C spenner over buen DB som ikke inneholder C. Denne buen er den store buen med sentralvinkel \(360^{\circ}-u\).

Steg 1 - Identifiser sentralvinkelen

Vinkelen \(u=\angle BSD\) spenner over den lille buen BD.

Steg 2 - Finn den andre buen

Den store buen fra D til B har vinkelmål \(360^{\circ}-u\).

Steg 3 - Identifiser buen for periferivinkelen

Periferivinkelen \(\angle DCB\) spenner over buen DB som ikke inneholder C, altså den store buen.

Steg 4 - Bruk periferivinkelsetningen

En periferivinkel er halvparten av sentralvinkelen over samme bue.

Steg 5 - Sett inn buemålet

\[\angle DCB=\frac12(360^{\circ}-u).\]

Steg 6 - Forenkle

\[\angle DCB=180^{\circ}-\frac12u.\]

Illustrasjon til Oppgave 1a
Den innskrevne firkanten med sentralvinkelen u.

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
Angle[D,C,B]
\(\frac12(360^{\circ}-u)\)

Tolkning: GeoGebra-figuren viser at vinkelen ved C spenner over den store buen DB.

Python-kontroll med SymPy

Python 3 - SymPy
import sympy as sp
u = sp.symbols("u", positive=True)
minor_arc = u
major_arc = 360 - u
inscribed_angle = sp.simplify(major_arc/2)
expected = 180 - u/2
print("Minor arc BD has central angle =", minor_arc)
print("Major arc BD has central angle =", major_arc)
print("Inscribed angle DCB = half of major arc =", inscribed_angle)
print("Expected expression =", expected)
print("Difference check =", sp.simplify(inscribed_angle - expected))
print("Therefore angle DCB = 180 degrees - u/2")
Utskrift fra Python:
Minor arc BD has central angle = u
Major arc BD has central angle = 360 - u
Inscribed angle DCB = half of major arc = 180 - u/2
Expected expression = 180 - u/2
Difference check = 0
Therefore angle DCB = 180 degrees - u/2

Fasit: \(\angle DCB=180^{\circ}-\frac12u\).

Vanlig feil: Å bruke \(u/2\) direkte; vinkelen ved C spenner over den store, ikke den lille, buen DB.
Sensorpunkt: Det må framgå hvilken bue periferivinkelen spenner over.
Del 2 - Oppgave 1bSirkelgeometri - syklisk firkant

Oppgave 1b

Oppgave: Vis at \[\angle BAD+\angle DCB=\angle CBA+\angle ADC=180^{\circ}.\]
Vis løsning

Hva spør oppgaven om? Motstående vinkler i en innskrevet firkant spenner til sammen over hele sirkelens 360 grader.

Steg 1 - Finn \(\angle BAD\)

Vinkelen \(\angle BAD\) spenner over den lille buen BD med sentralvinkel \(u\), så \(\angle BAD=\frac12u\).

Steg 2 - Bruk resultatet fra a

\[\angle DCB=180^{\circ}-\frac12u.\]

Steg 3 - Summer det første motstående paret

\[\angle BAD+\angle DCB=\frac12u+180^{\circ}-\frac12u=180^{\circ}.\]

Steg 4 - Betrakt det andre motstående paret

Vinklene \(\angle CBA\) og \(\angle ADC\) spenner over de to komplementære buene CA.

Steg 5 - Summer buene

De to buene har samlet vinkelmål \(360^{\circ}\).

Steg 6 - Halver

Summen av periferivinklene blir derfor \(\frac12\cdot360^{\circ}=180^{\circ}\).

Steg 7 - Konkluder

Begge par motstående vinkler i den innskrevne firkanten summerer til \(180^{\circ}\).

Illustrasjon til Oppgave 1b
Motstående vinkler i en syklisk firkant er supplementvinkler.

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
Angle[B,A,D]+Angle[D,C,B]
\(180^{\circ}\)
2
Angle[C,B,A]+Angle[A,D,C]
\(180^{\circ}\)

Tolkning: Måling i GeoGebra bekrefter syklisk-firkant-setningen.

Python-kontroll med SymPy

Python 3 - SymPy
import sympy as sp
u, v = sp.symbols("u v", positive=True)
angle_BAD = u/2
angle_DCB = 180 - u/2
first_sum = sp.simplify(angle_BAD + angle_DCB)
# For the other pair, let one central arc be v and the other 360-v.
angle_CBA = v/2
angle_ADC = (360 - v)/2
second_sum = sp.simplify(angle_CBA + angle_ADC)
print("Angle BAD =", angle_BAD)
print("Angle DCB =", angle_DCB)
print("First opposite-angle sum =", first_sum)
print("Angle CBA =", angle_CBA)
print("Angle ADC =", angle_ADC)
print("Second opposite-angle sum =", second_sum)
print("Both sums equal 180 degrees =", first_sum == 180 and second_sum == 180)
Utskrift fra Python:
Angle BAD = u/2
Angle DCB = 180 - u/2
First opposite-angle sum = 180
Angle CBA = v/2
Angle ADC = 180 - v/2
Second opposite-angle sum = 180
Both sums equal 180 degrees = True

Fasit: \(\angle BAD+\angle DCB=\angle CBA+\angle ADC=180^{\circ}\).

Vanlig feil: Å tro at alle fire vinklene hver for seg er 90 grader.
Sensorpunkt: Beviset skal bruke buer/periferivinkelsetningen, ikke bare sitere figuren.
Del 2 - Oppgave 2aSirkel - likningssystem

Oppgave 2a

Oppgave: Sirkelen har likning \[x^2+y^2+ax+by+c=0.\] Punktene \(A(3,8)\), \(B(9,6)\) og \(C(13,-2)\) ligger på sirkelen. Sett opp et likningssystem som svarer til opplysningene.
Vis løsning

Hva spør oppgaven om? Hvert punkt settes inn i sirkelens likning og gir én lineær likning i a, b og c.

Steg 1 - Sett inn A

\[3^2+8^2+3a+8b+c=0\Rightarrow 3a+8b+c=-73.\]

Steg 2 - Sett inn B

\[9^2+6^2+9a+6b+c=0\Rightarrow 9a+6b+c=-117.\]

Steg 3 - Sett inn C

\[13^2+(-2)^2+13a-2b+c=0\Rightarrow 13a-2b+c=-173.\]

Steg 4 - Samle systemet

\[\begin{cases}3a+8b+c=-73\\9a+6b+c=-117\\13a-2b+c=-173\end{cases}\]

Steg 5 - Kontroller linearitet

Alle ukjente forekommer i første grad, så dette er et lineært 3×3-system.

Steg 6 - Knytt til geometrien

Tre ikke-kollineære punkter bestemmer én entydig sirkel.

Illustrasjon til Oppgave 2a
De tre oppgitte punktene på den bestemte sirkelen.

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
3^2+8^2+3a+8b+c=0
\(3a+8b+c=-73\)
2
9^2+6^2+9a+6b+c=0
\(9a+6b+c=-117\)
3
13^2+(-2)^2+13a-2b+c=0
\(13a-2b+c=-173\)

Tolkning: Hver rad kommer direkte fra ett av de tre punktene.

Python-kontroll med SymPy

Python 3 - SymPy
import sympy as sp
a, b, c = sp.symbols("a b c", real=True)
points = [(3, 8), (9, 6), (13, -2)]
equations = []
for px, py in points:
    equation = sp.expand(px**2 + py**2 + a*px + b*py + c)
    equations.append(equation)
print("Points =", points)
for index, equation in enumerate(equations, start=1):
    print("Equation", index, ":", equation, "= 0")
print("Equivalent right-hand sides:")
print("3*a + 8*b + c =", -(3**2 + 8**2))
print("9*a + 6*b + c =", -(9**2 + 6**2))
print("13*a - 2*b + c =", -(13**2 + (-2)**2))
Utskrift fra Python:
Points = [(3, 8), (9, 6), (13, -2)]
Equation 1 : 3*a + 8*b + c + 73 = 0
Equation 2 : 9*a + 6*b + c + 117 = 0
Equation 3 : 13*a - 2*b + c + 173 = 0
Equivalent right-hand sides:
3*a + 8*b + c = -73
9*a + 6*b + c = -117
13*a - 2*b + c = -173

Fasit: Likningssystemet er \(3a+8b+c=-73\), \(9a+6b+c=-117\), \(13a-2b+c=-173\).

Vanlig feil: Å glemme at \((-2)^2=4\), eller å skrive leddet \(by\) som \(+2b\) i punkt C.
Sensorpunkt: Alle tre innsettingene og fortegnene skal være korrekte.
Del 2 - Oppgave 2bSirkel - CAS

Oppgave 2b

Oppgave: Bruk CAS til å bestemme \(a\), \(b\) og \(c\).
Vis løsning

Hva spør oppgaven om? Vi løser det lineære systemet og skriver deretter sirkelens likning på både generell form og sentrum-radius-form.

Steg 1 - Løs systemet

CAS gir \[a=-6,\qquad b=4,\qquad c=-87.\]

Steg 2 - Sett inn i likningen

\[x^2+y^2-6x+4y-87=0.\]

Steg 3 - Fullfør kvadratet i x

\[x^2-6x=(x-3)^2-9.\]

Steg 4 - Fullfør kvadratet i y

\[y^2+4y=(y+2)^2-4.\]

Steg 5 - Samle konstantene

\[(x-3)^2+(y+2)^2=100.\]

Steg 6 - Les av sentrum og radius

Sentrum er \(S(3,-2)\), og radius er \(10\).

Steg 7 - Kontroller punktene

Alle tre punktene gir venstreside lik 0 i den generelle likningen.

Illustrasjon til Oppgave 2b
Sirkelen har sentrum (3,-2) og radius 10.

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
Solve[{3a+8b+c=-73,9a+6b+c=-117,13a-2b+c=-173},{a,b,c}]
\(a=-6, b=4, c=-87\)
2
CompleteSquare[x^2+y^2-6x+4y-87]
\((x-3)^2+(y+2)^2=100\)

Tolkning: CAS gir sentrum \((3,-2)\) og radius 10.

Python-kontroll med SymPy

Python 3 - SymPy
import sympy as sp
x, y, a, b, c = sp.symbols("x y a b c", real=True)
system = [3*a + 8*b + c + 73,
          9*a + 6*b + c + 117,
          13*a - 2*b + c + 173]
solution = sp.solve(system, [a, b, c], dict=True)[0]
circle_general = x**2 + y**2 + solution[a]*x + solution[b]*y + solution[c]
center = (3, -2)
radius_squared = 100
points = [(3, 8), (9, 6), (13, -2)]
print("CAS solution =", solution)
print("General circle expression =", circle_general)
print("General equation:", circle_general, "= 0")
print("Center =", center)
print("Radius squared =", radius_squared)
print("Radius =", sp.sqrt(radius_squared))
for point in points:
    value = sp.simplify(circle_general.subs({x:point[0], y:point[1]}))
    print("Check point", point, "gives", value)
Utskrift fra Python:
CAS solution = {a: -6, b: 4, c: -87}
General circle expression = x**2 - 6*x + y**2 + 4*y - 87
General equation: x**2 - 6*x + y**2 + 4*y - 87 = 0
Center = (3, -2)
Radius squared = 100
Radius = 10
Check point (3, 8) gives 0
Check point (9, 6) gives 0
Check point (13, -2) gives 0

Fasit: \(a=-6\), \(b=4\), \(c=-87\). Sirkelen er \((x-3)^2+(y+2)^2=100\).

Vanlig feil: Å lese sentrum som \((-3,2)\); fortegnene skifter når kvadratene fullføres.
Sensorpunkt: Parameterverdiene skal oppgis, og det er en styrke å kontrollere sentrum/radius og punktene.
Del 2 - Oppgave 3aBinomisk modell - forutsetninger

Oppgave 3a

Oppgave: Et fly har 116 plasser. Sannsynligheten for at en passasjer med billett ikke møter, er 6 %. Hva må vi forutsette for å kunne bruke en binomisk sannsynlighetsmodell?
Vis løsning

Hva spør oppgaven om? Vi beskriver de fire standardkravene til en binomisk forsøksrekke i denne konkrete situasjonen.

Steg 1 - Fast antall forsøk

For en bestemt flyavgang må antall solgte billetter \(n\) være fast.

Steg 2 - To mulige utfall

Hver billettinnehaver må klassifiseres som «møter» eller «møter ikke».

Steg 3 - Samme sannsynlighet

Sannsynligheten for å møte må være den samme for alle, \(p=1-0{,}06=0{,}94\).

Steg 4 - Uavhengighet

Om én passasjer møter, må antas å være uavhengig av om de andre møter.

Steg 5 - Definer variabelen

Da kan \(X\), antall som møter, modelleres som \(X\sim\operatorname{Bin}(n,0{,}94)\).

Steg 6 - Vurder realismen

I praksis kan uavhengighet og lik p være tilnærminger, men de er nødvendige modellforutsetninger her.

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
BinomialDist[n,0.94]
Modell for antall som møter

Tolkning: Kommandoen forutsetter fast n, uavhengige forsøk, to utfall og konstant p.

Python-kontroll med SymPy

Python 3 - SymPy
from fractions import Fraction
p_no_show = Fraction(6, 100)
p_show = 1 - p_no_show
conditions = [
    "fixed number n of sold tickets",
    "two outcomes per passenger: show or no-show",
    "constant probability of showing",
    "independent passenger outcomes"
]
print("No-show probability =", p_no_show, "=", float(p_no_show))
print("Show probability =", p_show, "=", float(p_show))
print("Required binomial assumptions:")
for index, condition in enumerate(conditions, start=1):
    print(index, condition)
print("Model notation: X ~ Bin(n, 0.94)")
Utskrift fra Python:
No-show probability = 3/50 = 0.06
Show probability = 47/50 = 0.94
Required binomial assumptions:
1 fixed number n of sold tickets
2 two outcomes per passenger: show or no-show
3 constant probability of showing
4 independent passenger outcomes
Model notation: X ~ Bin(n, 0.94)

Fasit: Fast n, to utfall, samme møte-sannsynlighet \(0{,}94\) for alle og uavhengige passasjerutfall.

Vanlig feil: Å nevne bare at sannsynligheten er 94 %, uten å diskutere uavhengighet og fast antall forsøk.
Sensorpunkt: Alle sentrale binomiske forutsetninger skal knyttes til situasjonen.
Del 2 - Oppgave 3bBinomisk sannsynlighet

Oppgave 3b

Oppgave: Det er solgt 122 billetter. Bestem sannsynligheten for at alle som møter, får plass på flyet.
Vis løsning

Hva spør oppgaven om? Alle får plass når høyst 116 passasjerer møter. Med \(X\sim\operatorname{Bin}(122,0{,}94)\) beregner vi \(P(X\le116)\).

Steg 1 - Definer fordelingen

\[X\sim\operatorname{Bin}(122,0{,}94).\]

Steg 2 - Oversett hendelsen

Flyet har 116 plasser, så hendelsen er \(X\le116\).

Steg 3 - Skriv den kumulative summen

\[P(X\le116)=\sum_{k=0}^{116}\binom{122}{k}0{,}94^k0{,}06^{122-k}.\]

Steg 4 - Beregn digitalt

Kumulativ binomisk beregning gir omtrent \(0{,}7466\).

Steg 5 - Gjør om til prosent

\[0{,}7466\approx74{,}66\,\%.\]

Steg 6 - Tolk

Det er altså omtrent 25,34 % risiko for at flere enn 116 møter og noen ikke får plass.

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
BinomialDist[122,0.94,116,true]
\(0.7466012314\)

Tolkning: Den kumulative sannsynligheten til og med 116 er sannsynligheten for at kapasiteten holder.

Python-kontroll med SymPy

Python 3 - SymPy
from math import comb
n = 122
p_show = 0.94
capacity = 116
terms = [comb(n, k)*(p_show**k)*((1-p_show)**(n-k)) for k in range(capacity + 1)]
probability = sum(terms)
overbook_probability = 1 - probability
largest_terms = sorted(enumerate(terms), key=lambda item: item[1], reverse=True)[:5]
print("Distribution: X ~ Bin(", n, ",", p_show, ")")
print("Capacity condition: X <=", capacity)
print("Number of summed terms =", len(terms))
print("P(X <= 116) =", format(probability, ".12f"))
print("Percentage =", format(100*probability, ".6f"), "%")
print("P(X > 116) =", format(overbook_probability, ".12f"))
print("Five largest individual probabilities (k, P(X=k)) =")
for k, value in largest_terms:
    print(k, format(value, ".12f"))
Utskrift fra Python:
Distribution: X ~ Bin( 122 , 0.94 )
Capacity condition: X <= 116
Number of summed terms = 117
P(X <= 116) = 0.746601231363
Percentage = 74.660123 %
P(X > 116) = 0.253398768637
Five largest individual probabilities (k, P(X=k)) =
115 0.152310781654
116 0.143994963116
114 0.139753243805
113 0.112991984353
112 0.081498473821

Fasit: \(P(X\le116)\approx0{,}7466\), altså omtrent \(74{,}66\,\%\).

Vanlig feil: Å beregne \(P(X=116)\) i stedet for den kumulative sannsynligheten \(P(X\le116)\).
Sensorpunkt: Hendelsen skal oversettes korrekt, og en kumulativ binomisk sannsynlighet skal brukes.
Del 2 - Oppgave 3cBinomisk modell - maksimal billettmengde

Oppgave 3c

Oppgave: Flyselskapet ønsker minst 95 % sannsynlighet for at alle som møter, får plass. Hvor mange billetter kan de maksimalt selge?
Vis løsning

Hva spør oppgaven om? Vi søker største heltall n som oppfyller \(P(X\le116)\ge0{,}95\) for \(X\sim\operatorname{Bin}(n,0{,}94)\).

Steg 1 - Skriv kravet

\[P(X\le116)\ge0{,}95.\]

Steg 2 - La n variere

Vi beregner den kumulative sannsynligheten for stigende antall solgte billetter.

Steg 3 - Test \(n=119\)

\[P(X\le116)\approx0{,}9764.\] Dette er over 0,95.

Steg 4 - Test neste heltall

For \(n=120\) får vi \[P(X\le116)\approx0{,}9340.\] Dette er under 0,95.

Steg 5 - Bruk maksimalitetsargumentet

Siden 119 oppfyller kravet og 120 ikke gjør det, er 119 det største tillatte billettallet.

Steg 6 - Tolk overbookingen

De kan selge 3 billetter mer enn de 116 plassene og fortsatt oppfylle 95 %-kravet.

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
Sequence[BinomialDist[n,0.94,116,true],n,116,125]
Første verdi under 0,95 oppstår ved \(n=120\)

Tolkning: Grensekontrollen av både 119 og 120 dokumenterer at maksimum er 119.

Python-kontroll med SymPy

Python 3 - SymPy
from math import comb
p_show = 0.94
capacity = 116
threshold = 0.95

def cumulative_probability(n):
    return sum(comb(n, k)*(p_show**k)*((1-p_show)**(n-k))
               for k in range(capacity + 1))

results = []
for n in range(116, 126):
    results.append((n, cumulative_probability(n)))
valid = [n for n, probability in results if probability >= threshold]
maximum_n = max(valid)
print("Required threshold =", threshold)
print("Capacity =", capacity)
for n, probability in results:
    print("n =", n, "P(X <= 116) =", format(probability, ".12f"))
print("Largest n satisfying the requirement =", maximum_n)
print("Probability for n = 119 =", format(cumulative_probability(119), ".12f"))
print("Probability for n = 120 =", format(cumulative_probability(120), ".12f"))
print("Number of tickets above capacity =", maximum_n - capacity)
Utskrift fra Python:
Required threshold = 0.95
Capacity = 116
n = 116 P(X <= 116) = 1.000000000000
n = 117 P(X <= 116) = 0.999282273683
n = 118 P(X <= 116) = 0.994243834934
n = 119 P(X <= 116) = 0.976407761764
n = 120 P(X <= 116) = 0.933957907618
n = 121 P(X <= 116) = 0.857548170157
n = 122 P(X <= 116) = 0.746601231363
n = 123 P(X <= 116) = 0.611245966034
n = 124 P(X <= 116) = 0.468542843445
n = 125 P(X <= 116) = 0.335828939437
Largest n satisfying the requirement = 119
Probability for n = 119 = 0.976407761764
Probability for n = 120 = 0.933957907618
Number of tickets above capacity = 3

Fasit: Flyselskapet kan maksimalt selge \(119\) billetter.

Vanlig feil: Å stoppe ved en verdi som fungerer uten å kontrollere at det neste heltallet ikke fungerer.
Sensorpunkt: Både sannsynligheten ved 119 og ved 120 bør vises for å dokumentere maksimaliteten.
Del 2 - Oppgave 4aModellering - geometri

Oppgave 4a

Oppgave: Fire byer danner et kvadrat med side 10. Veinettet har fire like skråstrekninger med lengde s og en midtstrekning \(EF=x\). Vis at samlet veilengde er \[g(x)=x+2\sqrt{(x-10)^2+10^2}.\]
Vis løsning

Hva spør oppgaven om? Vi uttrykker én skråstrekning ved Pytagoras og bruker symmetrien i figuren.

Steg 1 - Bruk symmetrien horisontalt

E og F ligger på kvadratets midtlinje, så den horisontale avstanden fra et hjørne til E eller F er \(5\).

Steg 2 - Fordel den resterende høyden

Den totale høyden utenom EF er \(10-x\). Ved symmetri er den vertikale komponenten i hver skråstrekning \((10-x)/2\).

Steg 3 - Bruk Pytagoras på én skråstrekning

\[s=\sqrt{5^2+\left(\frac{10-x}{2}\right)^2}.\]

Steg 4 - Skriv samlet lengde

Det finnes fire skråstrekninger og én midtstrekning: \[g(x)=4s+x.\]

Steg 5 - Sett inn s

\[g(x)=x+4\sqrt{25+\frac{(10-x)^2}{4}}.\]

Steg 6 - Trekk ut faktoren

\[\sqrt{25+\frac{(10-x)^2}{4}}=\frac12\sqrt{100+(10-x)^2}.\]

Steg 7 - Forenkle

\[g(x)=x+2\sqrt{(x-10)^2+10^2}.\]

Steg 8 - Angi naturlig domene

Geometrisk er \(0\le x\le10\).

Illustrasjon til Oppgave 4a
Geometrien i det symmetriske veinettet.

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
s=sqrt(5^2+((10-x)/2)^2)
\(s=\frac12\sqrt{(x-10)^2+100}\)
2
Simplify[x+4s]
\(x+2\sqrt{(x-10)^2+100}\)

Tolkning: CAS forenkler den geometriske Pytagoras-formelen til oppgitt modell.

Python-kontroll med SymPy

Python 3 - SymPy
import sympy as sp
x = sp.symbols("x", real=True)
horizontal_leg = sp.Integer(5)
vertical_leg = (10 - x)/2
s = sp.sqrt(horizontal_leg**2 + vertical_leg**2)
total_length_raw = x + 4*s
total_length_simplified = sp.simplify(total_length_raw)
target = x + 2*sp.sqrt((x - 10)**2 + 10**2)
print("Horizontal leg =", horizontal_leg)
print("Vertical leg =", vertical_leg)
print("One slanted road s =", s)
print("Total length x + 4*s =", total_length_raw)
print("Simplified total length =", total_length_simplified)
print("Target expression =", target)
print("Difference check =", sp.simplify(total_length_simplified - target))
print("Geometric domain: 0 <= x <= 10")
Utskrift fra Python:
Horizontal leg = 5
Vertical leg = 5 - x/2
One slanted road s = sqrt((5 - x/2)**2 + 25)
Total length x + 4*s = x + 4*sqrt((5 - x/2)**2 + 25)
Simplified total length = x + 2*sqrt((x - 10)**2 + 100)
Target expression = x + 2*sqrt((x - 10)**2 + 100)
Difference check = 0
Geometric domain: 0 <= x <= 10

Fasit: \(g(x)=x+2\sqrt{(x-10)^2+100}\), for \(0\le x\le10\).

Vanlig feil: Å bruke hele høyden \(10-x\) som katet i hver skråstrekning; den deles likt mellom øvre og nedre del.
Sensorpunkt: Symmetrien, Pytagoras og faktoren fire må forklares.
Del 2 - Oppgave 4bOptimering med CAS

Oppgave 4b

Oppgave: Bruk CAS til å bestemme \(x\) slik at samlet veilengde blir minst mulig. Hva blir den minste veilengden?
Vis løsning

Hva spør oppgaven om? Vi minimerer \(g(x)=x+2\sqrt{(x-10)^2+100}\) på intervallet \([0,10]\).

Steg 1 - Deriver modellen

\[g^{\prime}(x)=1+\frac{2(x-10)}{\sqrt{(x-10)^2+100}}.\]

Steg 2 - Sett den deriverte lik null

\[1+\frac{2(x-10)}{\sqrt{(x-10)^2+100}}=0.\]

Steg 3 - Løs med CAS

CAS gir \[x=10-\frac{10\sqrt3}{3}\approx4{,}2265.\]

Steg 4 - Kontroller at x ligger i domenet

Verdien ligger mellom 0 og 10.

Steg 5 - Finn funksjonsverdien

\[g\!\left(10-\frac{10\sqrt3}{3}\right)=10+10\sqrt3.\]

Steg 6 - Finn desimalverdien

\[10+10\sqrt3\approx27{,}3205\text{ km}.\]

Steg 7 - Kontroller endepunktene

\(g(0)=20\sqrt2\approx28{,}284\) og \(g(10)=30\), begge større.

Steg 8 - Konkluder globalt minimum

Dermed er den indre kritiske verdien det globale minimumet på \([0,10]\).

Illustrasjon til Oppgave 4b
Optimalt veinett når x er omtrent 4,23 km.

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
Derivative[x+2sqrt((x-10)^2+100),x]
\(1+\frac{2(x-10)}{\sqrt{(x-10)^2+100}}\)
2
Solve[g'(x)=0,x]
\(10-\frac{10\sqrt3}{3}\)
3
Substitute[g,x,10-10sqrt(3)/3]
\(10+10\sqrt3\)

Tolkning: Endepunktskontroll bekrefter at den stasjonære verdien er globalt minimum.

Python-kontroll med SymPy

Python 3 - SymPy
import sympy as sp
x = sp.symbols("x", real=True)
g = x + 2*sp.sqrt((x - 10)**2 + 100)
g_prime = sp.simplify(sp.diff(g, x))
critical_points = sp.solve(sp.Eq(g_prime, 0), x)
valid_critical = [value for value in critical_points if 0 <= float(sp.N(value)) <= 10]
minimum_x = valid_critical[0]
minimum_length = sp.simplify(g.subs(x, minimum_x))
endpoint_values = {0: sp.simplify(g.subs(x, 0)), 10: sp.simplify(g.subs(x, 10))}
print("g(x) =", g)
print("g'(x) =", g_prime)
print("Critical points =", critical_points)
print("Valid critical point =", minimum_x)
print("Decimal x =", sp.N(minimum_x, 12))
print("Exact minimum length =", minimum_length)
print("Decimal minimum length =", sp.N(minimum_length, 12))
print("Endpoint values =", endpoint_values)
print("Decimal endpoint values =", {k:sp.N(v,12) for k,v in endpoint_values.items()})
Utskrift fra Python:
g(x) = x + 2*sqrt((x - 10)**2 + 100)
g'(x) = (2*x + sqrt((x - 10)**2 + 100) - 20)/sqrt((x - 10)**2 + 100)
Critical points = [10 - 10*sqrt(3)/3]
Valid critical point = 10 - 10*sqrt(3)/3
Decimal x = 4.22649730810
Exact minimum length = 10 + 10*sqrt(3)
Decimal minimum length = 27.3205080757
Endpoint values = {0: 20*sqrt(2), 10: 30}
Decimal endpoint values = {0: 28.2842712475, 10: 30.0000000000}

Fasit: \(x=10-\frac{10\sqrt3}{3}\approx4{,}23\) km, og minste veilengde er \(10+10\sqrt3\approx27{,}32\) km.

Vanlig feil: Å finne et stasjonært punkt uten å kontrollere domenet og endepunktene.
Sensorpunkt: Eksakt og numerisk verdi samt global minimumskontroll bør vises.
Del 2 - Oppgave 5aParameterframstilling - graf

Oppgave 5a

Oppgave: Posisjonsvektoren er \[\vec r(t)=[t^3-2t,\ t^2+1],\qquad t\in\mathbb R.\] Bruk graftegner til å tegne grafen for \(t\in[-2,2]\).
Vis løsning

Hva spør oppgaven om? Vi tegner parameterkurven ved å la t variere kontinuerlig fra -2 til 2.

Steg 1 - Identifiser koordinatfunksjonene

\[x(t)=t^3-2t,\qquad y(t)=t^2+1.\]

Steg 2 - Finn noen kontrollpunkter

\[r(-2)=(-4,5),\ r(-1)=(1,2),\ r(0)=(0,1),\ r(1)=(-1,2),\ r(2)=(4,5).\]

Steg 3 - Legg merke til symmetrien

\(x(-t)=-x(t)\) og \(y(-t)=y(t)\), så kurven er speilsymmetrisk om y-aksen.

Steg 4 - Skriv GeoGebra-kommandoen

Bruk \(\operatorname{Kurve}(t^3-2t,t^2+1,t,-2,2)\).

Steg 5 - Tegn kurven

Kurven starter i \((-4,5)\), går inn mot midten, passerer \((1,2)\), \((0,1)\), \((-1,2)\) og ender i \((4,5)\).

Steg 6 - Kontroller parameterretningen

Når t øker fra -2 til 2, beveger partikkelen seg fra venstre topp via sentrum til høyre topp.

Illustrasjon til Oppgave 5a
Parameterkurven for t fra -2 til 2.

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
Curve[t^3-2t,t^2+1,t,-2,2]
Parameterkurven for \(-2\le t\le2\)

Tolkning: Kurve-kommandoen bruker t som parameter og tegner begge koordinatfunksjonene samtidig.

Python-kontroll med SymPy

Python 3 - SymPy
import sympy as sp
t = sp.symbols("t", real=True)
r = sp.Matrix([t**3 - 2*t, t**2 + 1])
control_parameters = [-2, -1, 0, 1, 2]
control_points = [tuple(r.subs(t, value)) for value in control_parameters]
x_odd_check = sp.simplify(r[0].subs(t, -t) + r[0])
y_even_check = sp.simplify(r[1].subs(t, -t) - r[1])
print("r(t) =", list(r))
print("Parameter interval = [-2, 2]")
for value, point in zip(control_parameters, control_points):
    print("t =", value, "gives r(t) =", point)
print("x(-t) + x(t) =", x_odd_check)
print("y(-t) - y(t) =", y_even_check)
print("The curve is symmetric about the y-axis =", x_odd_check == 0 and y_even_check == 0)
Utskrift fra Python:
r(t) = [t**3 - 2*t, t**2 + 1]
Parameter interval = [-2, 2]
t = -2 gives r(t) = (-4, 5)
t = -1 gives r(t) = (1, 2)
t = 0 gives r(t) = (0, 1)
t = 1 gives r(t) = (-1, 2)
t = 2 gives r(t) = (4, 5)
x(-t) + x(t) = 0
y(-t) - y(t) = 0
The curve is symmetric about the y-axis = True

Fasit: Grafen er parameterkurven vist nedenfor for \(-2\le t\le2\).

Vanlig feil: Å tegne \(y\) som en vanlig funksjon av \(x\) uten å respektere parameteren og retningen.
Sensorpunkt: Riktig Kurve-kommando, intervall og representative kontrollpunkter skal være med.
Del 2 - Oppgave 5bFartsvektor og banefart

Oppgave 5b

Oppgave: Bestem fartsvektoren \(\vec v(-1)\) og banefarten \(|\vec v(-1)|\). Tegn fartsvektoren inn på grafen i det aktuelle punktet.
Vis løsning

Hva spør oppgaven om? Fartsvektoren er den deriverte av posisjonsvektoren komponentvis.

Steg 1 - Deriver posisjonen

\[\vec v(t)=\vec r^{\prime}(t)=[3t^2-2,\ 2t].\]

Steg 2 - Sett inn \(t=-1\)

\[\vec v(-1)=[3\cdot1-2,\ -2]=[1,-2].\]

Steg 3 - Finn posisjonen

\[\vec r(-1)=[(-1)^3-2(-1),\ (-1)^2+1]=[1,2].\]

Steg 4 - Finn banefarten

\[|\vec v(-1)|=\sqrt{1^2+(-2)^2}=\sqrt5.\]

Steg 5 - Finn desimalverdien

\[\sqrt5\approx2{,}236.\]

Steg 6 - Tegn vektoren

Plasser halen i \((1,2)\). Med samme målestokk peker den mot \((2,0)\).

Steg 7 - Tolk retningen

Vektoren peker mot høyre og nedover, som er kurvens øyeblikkelige bevegelsesretning ved \(t=-1\).

Illustrasjon til Oppgave 5b
Fartsvektoren er tegnet med hale i r(-1)=(1,2).

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
Derivative[(t^3-2t,t^2+1)]
\((3t^2-2,2t)\)
2
Vector[(1,2),(2,0)]
\((1,-2)\)

Tolkning: Vektoren er tangent til parameterkurven i punktet \(r(-1)=(1,2)\).

Python-kontroll med SymPy

Python 3 - SymPy
import sympy as sp
t = sp.symbols("t", real=True)
r = sp.Matrix([t**3 - 2*t, t**2 + 1])
v = r.diff(t)
time = sp.Integer(-1)
position = r.subs(t, time)
velocity = v.subs(t, time)
speed_squared = sp.simplify(velocity.dot(velocity))
speed = sp.sqrt(speed_squared)
arrow_endpoint = position + velocity
print("r(t) =", list(r))
print("v(t) = r'(t) =", list(v))
print("r(-1) =", list(position))
print("v(-1) =", list(velocity))
print("Speed squared =", speed_squared)
print("Exact speed =", speed)
print("Decimal speed =", sp.N(speed, 12))
print("Arrow endpoint when tail is at r(-1) =", list(arrow_endpoint))
Utskrift fra Python:
r(t) = [t**3 - 2*t, t**2 + 1]
v(t) = r'(t) = [3*t**2 - 2, 2*t]
r(-1) = [1, 2]
v(-1) = [1, -2]
Speed squared = 5
Exact speed = sqrt(5)
Decimal speed = 2.23606797750
Arrow endpoint when tail is at r(-1) = [2, 0]

Fasit: \(\vec v(-1)=[1,-2]\) og \(|\vec v(-1)|=\sqrt5\approx2{,}24\).

Vanlig feil: Å finne lengden av posisjonsvektoren i stedet for lengden av fartsvektoren.
Sensorpunkt: Både vektor, norm, aktuelt punkt og korrekt plassering på grafen skal være med.
Del 2 - Oppgave 5cBanefart - likning med CAS

Oppgave 5c

Oppgave: Bruk CAS til å bestemme \(t\) slik at banefarten til partikkelen blir 2.
Vis løsning

Hva spør oppgaven om? Vi setter normen til fartsvektoren lik 2. For å unngå rotuttrykk kan vi sette den kvadrerte farten lik 4.

Steg 1 - Bruk fartsvektoren

\[\vec v(t)=[3t^2-2,2t].\]

Steg 2 - Skriv kvadrert fart

\[|\vec v(t)|^2=(3t^2-2)^2+(2t)^2.\]

Steg 3 - Sett lik \(2^2\)

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

Steg 4 - Utvid

\[9t^4-8t^2+4=4.\]

Steg 5 - Forenkle

\[9t^4-8t^2=0\iff t^2(9t^2-8)=0.\]

Steg 6 - Løs faktorene

\[t=0\quad\text{eller}\quad t^2=\frac89.\]

Steg 7 - Skriv alle løsningene

\[t=0,\qquad t=\pm\frac{2\sqrt2}{3}.\]

Steg 8 - Kontroller

Innsetting i normen gir nøyaktig 2 for alle tre verdiene.

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
Solve[(3t^2-2)^2+(2t)^2=4,t]
\(t=0,\ t=\pm\frac{2\sqrt2}{3}\)

Tolkning: CAS løser likningen for kvadrert banefart og gir tre reelle tidspunkter.

Python-kontroll med SymPy

Python 3 - SymPy
import sympy as sp
t = sp.symbols("t", real=True)
v = sp.Matrix([3*t**2 - 2, 2*t])
speed_squared = sp.expand(v.dot(v))
equation_polynomial = sp.expand(speed_squared - 4)
factored_equation = sp.factor(equation_polynomial)
solutions = sp.solve(sp.Eq(speed_squared, 4), t)
print("v(t) =", list(v))
print("Speed squared =", speed_squared)
print("Equation speed^2 - 4 =", equation_polynomial)
print("Factored equation =", factored_equation)
print("Exact solutions =", solutions)
print("Decimal solutions =", [sp.N(value, 12) for value in solutions])
for value in solutions:
    checked_speed = sp.sqrt(speed_squared.subs(t, value))
    print("t =", value, "gives speed =", sp.simplify(checked_speed))
Utskrift fra Python:
v(t) = [3*t**2 - 2, 2*t]
Speed squared = 9*t**4 - 8*t**2 + 4
Equation speed^2 - 4 = 9*t**4 - 8*t**2
Factored equation = t**2*(9*t**2 - 8)
Exact solutions = [0, -2*sqrt(2)/3, 2*sqrt(2)/3]
Decimal solutions = [0, -0.942809041582, 0.942809041582]
t = 0 gives speed = 2
t = -2*sqrt(2)/3 gives speed = 2
t = 2*sqrt(2)/3 gives speed = 2

Fasit: \(t=0\) eller \(t=\pm\frac{2\sqrt2}{3}\).

Vanlig feil: Å ta kvadratroten og bare beholde den positive t-verdien; t er tidparameter og kan være negativ i hele modellen.
Sensorpunkt: Alle tre reelle løsninger og en kontroll av normen skal oppgis.
Del 2 - Oppgave 5dEkstremal banefart og ortogonalitet

Oppgave 5d

Oppgave: Vis at banefarten har ekstremalverdi i de punktene på kurven der fartsvektoren står normalt på akselerasjonsvektoren.
Vis løsning

Hva spør oppgaven om? Vi deriverer banefarten. Siden farten aldri er null, er dens deriverte null akkurat når skalarproduktet \(\vec v\cdot\vec a\) er null.

Steg 1 - Definer banefarten

La \(s(t)=|\vec v(t)|=\sqrt{\vec v(t)\cdot\vec v(t)}\).

Steg 2 - Deriver kvadratet

\[\frac{d}{dt}s(t)^2=\frac{d}{dt}(\vec v\cdot\vec v)=2\vec v\cdot\vec a.\]

Steg 3 - Knytt til \(s^{\prime}\)

Siden \(\frac{d}{dt}s^2=2ss^{\prime}\), får vi \[s^{\prime}(t)=\frac{\vec v(t)\cdot\vec a(t)}{|\vec v(t)|}.\]

Steg 4 - Bruk at farten er positiv

Vektoren \([3t^2-2,2t]\) kan ikke være null i begge komponenter samtidig, så \(|\vec v(t)|>0\).

Steg 5 - Finn betingelsen for stasjonær fart

\[s^{\prime}(t)=0\iff\vec v(t)\cdot\vec a(t)=0.\]

Steg 6 - Tolk skalarproduktet

Et skalarprodukt lik null betyr at vektorene står normalt på hverandre.

Steg 7 - Kontroller for denne kurven

\[\vec a(t)=[6t,2],\quad \vec v\cdot\vec a=18t^3-8t=2t(9t^2-4).\]

Steg 8 - Finn tidspunktene

Betingelsen gir \(t=-\frac23,0,\frac23\). I disse punktene er banefarten stasjonær og har lokale ekstremalverdier.

Illustrasjon til Oppgave 5d
Banefarten har stasjonære punkter ved t=-2/3, 0 og 2/3.

GeoGebra/CAS-kontroll

GeoGebra - CAS
1
v=(3t^2-2,2t)
Fartsvektor
2
a=Derivative[v]
\((6t,2)\)
3
Solve[Dot[v,a]=0,t]
\(t=-\frac23,0,\frac23\)

Tolkning: GeoGebra/CAS viser at de stasjonære fartstidspunktene er nøyaktig de samme som ortogonalitetstidspunktene.

Python-kontroll med SymPy

Python 3 - SymPy
import sympy as sp
t = sp.symbols("t", real=True)
v = sp.Matrix([3*t**2 - 2, 2*t])
a = v.diff(t)
speed_squared = sp.expand(v.dot(v))
speed = sp.sqrt(speed_squared)
dot_product = sp.expand(v.dot(a))
speed_derivative = sp.simplify(sp.diff(speed, t))
critical_times = sp.solve(sp.Eq(dot_product, 0), t)
print("v(t) =", list(v))
print("a(t) =", list(a))
print("Speed squared =", speed_squared)
print("v(t) dot a(t) =", dot_product)
print("Factored dot product =", sp.factor(dot_product))
print("Derivative of speed =", speed_derivative)
print("Critical times =", critical_times)
for value in critical_times:
    point = sp.Matrix([t**3 - 2*t, t**2 + 1]).subs(t, value)
    value_speed = sp.simplify(speed.subs(t, value))
    print("t =", value, "point =", list(point), "speed =", value_speed, "dot =", dot_product.subs(t, value))
Utskrift fra Python:
v(t) = [3*t**2 - 2, 2*t]
a(t) = [6*t, 2]
Speed squared = 9*t**4 - 8*t**2 + 4
v(t) dot a(t) = 18*t**3 - 8*t
Factored dot product = 2*t*(3*t - 2)*(3*t + 2)
Derivative of speed = (18*t**3 - 8*t)/sqrt(9*t**4 - 8*t**2 + 4)
Critical times = [-2/3, 0, 2/3]
t = -2/3 point = [28/27, 13/9] speed = 2*sqrt(5)/3 dot = 0
t = 0 point = [0, 1] speed = 2 dot = 0
t = 2/3 point = [-28/27, 13/9] speed = 2*sqrt(5)/3 dot = 0

Fasit: \(s^{\prime}(t)=0\iff\vec v(t)\cdot\vec a(t)=0\). Her skjer det ved \(t=-\frac23,0,\frac23\), altså når v og a står normalt på hverandre.

Vanlig feil: Å si at normalitet betyr at akselerasjonen er null; det er skalarproduktet mellom v og a som skal være null.
Sensorpunkt: Det generelle derivatargumentet må vises, ikke bare de tre numeriske tidspunktene.
Kilde og metode: Oppgavetekstene er transkribert fra Utdanningsdirektoratets eksamenssett REA3022 Matematikk R1, våren 2018. Løsningene, figurene og kontrollkodene er originale ifingo-utarbeidelser. Python-utskriftene er generert ved faktisk kjøring av hver kodeblokk under produksjonen.