Løsningsforslag til eksamenssettet fra Utdanningsdirektoratet.
Del 1 - uten hjelpemidler
Del 1 - Oppgave 1Derivasjon
Oppgave 1
Oppgave: Deriver funksjonen \[f(x)=e^x+\ln x.\]
Vis løsning
Hva spør oppgaven om? Vi skal derivere hvert ledd og ta hensyn til at logaritmen krever \(x>0\).
Steg 1 - Deriver eksponentialleddet
\((e^x)^{\prime}=e^x\).
Steg 2 - Deriver logaritmen
\((\ln x)^{\prime}=1/x\) for \(x>0\).
Steg 3 - Bruk sumregelen
Derivasjon er lineær, så de to deriverte kan summeres.
Steg 4 - Skriv svaret
\[f^{\prime}(x)=e^x+\frac1x,\qquad x>0.\]
GeoGebra/CAS-kontroll
GeoGebra - CAS/grafikk
1
Derivative[exp(x)+ln(x)]
\(e^x+1/x\)
Tolkning: CAS deriverer begge leddene.
Python-kontroll med SymPy
Python 3 - faktisk kjøring
importsympyasspx=sp.symbols("x",positive=True)f=sp.exp(x)+sp.log(x)f_prime=sp.diff(f,x)print("f(x) =",f)print("f'(x) =",f_prime)print("Domain condition: x > 0")print("Check at x=1:",sp.simplify(f_prime.subs(x,1)))
Utskrift fra Python:
f(x) = exp(x) + log(x)
f'(x) = exp(x) + 1/x
Domain condition: x > 0
Check at x=1: 1 + E
Fasit: \(f^{\prime}(x)=e^x+\dfrac1x\), for \(x>0\).
Vanlig feil: Å skrive \((\ln x)^{\prime}=\ln x\).
Sensorpunkt: Begge derivasjonsreglene og domenet bør framgå.
Et negativt skalarprodukt betyr at cosinus til vinkelen er negativ.
Steg 4 - Konklusjon
Dermed er vinkelen stump, altså større enn \(90^{\circ}\).
GeoGebra/CAS-kontroll
GeoGebra - CAS/grafikk
1
Dot(Vector[B,C],Vector[B,A])
\(-3\)
Tolkning: Negativt skalarprodukt gir stump vinkel.
Python-kontroll med SymPy
Python 3 - faktisk kjøring
importsympyasspA=sp.Matrix([1,3])B=sp.Matrix([4,0])C=sp.Matrix([9,4])BC=C-BBA=A-Bdot_product=BC.dot(BA)cos_value=sp.simplify(dot_product/(sp.sqrt(BC.dot(BC))*sp.sqrt(BA.dot(BA))))angle=sp.acos(cos_value)*180/sp.piprint("BC =",tuple(BC))print("BA =",tuple(BA))print("BC dot BA =",dot_product)print("cos(angle) =",cos_value)print("angle in degrees =",sp.N(angle,12))print("Angle greater than 90 degrees:",bool(sp.N(angle)>90))
Utskrift fra Python:
BC = (5, 4)
BA = (-3, 3)
BC dot BA = -3
cos(angle) = -sqrt(82)/82
angle in degrees = 96.3401917459
Angle greater than 90 degrees: True
Fasit: \(\angle CBA>90^{\circ}\).
Vanlig feil: Å bruke \(\overrightarrow{AB}\) i stedet for \(\overrightarrow{BA}\) uten å korrigere fortegnet.
Sensorpunkt: Vektorene må ha samme startpunkt B.
Del 1 - Oppgave 3bLinjeparameter og ortogonalitet
Oppgave 3b
Oppgave: Punktet \(P\) ligger på linjen gjennom B og C. Bestem P slik at \(\overrightarrow{AB}\perp\overrightarrow{AP}\).
Vis løsning
Hva spør oppgaven om? Vi parameterframstiller linjen og setter skalarproduktet lik null.
Utskrift fra Python:
P(t) = (5*t + 4, 4*t)
AB = (3, -3)
AP(t) = (5*t + 3, 4*t - 3)
Dot product equation = 3*t + 18
t = -6
P = (-26, -24)
Orthogonality check = 0
Fasit: \(P=(-26,-24)\).
Vanlig feil: Å bruke \(P=B+t(C-B)\) og deretter glemme at \(\overrightarrow{AP}=P-A\).
Sensorpunkt: Parameter, skalarprodukt og koordinatkontroll skal vises.
Del 1 - Oppgave 4aAlgoritmeforståelse
Oppgave 4a
Oppgave: Forklar strategien i programmet som søker etter maksimalverdien til \(A(t)=t(t^2-9)^4\) på \([0,3]\).
Vis løsning
Hva spør oppgaven om? Vi skal forklare hva løkken undersøker, hvordan t endres, og når programmet stopper.
Steg 1 - Arealfunksjonen
Programmet definerer arealet \(A(t)=t(t^2-9)^4\).
Steg 2 - Startverdi og steglengde
Søket starter ved \(t=0\) og bruker steglengden \(d=0{,}01\).
Steg 3 - Sammenlikning
Løkken undersøker om \(A(t+d)>A(t)\).
Steg 4 - Flytt mot høyre
Så lenge arealet øker, erstattes t med \(t+d\).
Steg 5 - Stoppkriterium
Når neste punkt ikke gir større areal, stopper løkken.
Steg 6 - Nøyaktighet
Svaret er en numerisk tilnærming med oppløsning omtrent 0,01, ikke et eksakt bevis.
Programmet slik det står i originaleksamen.
GeoGebra/CAS-kontroll
GeoGebra - CAS/grafikk
1
IterationList[If[A(t)<A(t+0.01),t+0.01,t],0,110]
stopp nær \(t=1\)
Tolkning: Algoritmen er et trinnvis søk etter første lokale maksimum.
Python-kontroll med SymPy
Python 3 - faktisk kjøring
defA(x):returnx*(x**2-9)**4t=0.0d=0.01iterations=0whileA(t)<A(t+d):t=t+diterations+=1print("Iterations =",iterations)print("Final t =",round(t,12))print("A(t) =",A(t))print("A(t+d) =",A(t+d))print("Next value is larger:",A(t)<A(t+d))print("The search stops near t = 1")
Utskrift fra Python:
Iterations = 100
Final t = 1.0
A(t) = 4095.999999999999
A(t+d) = 4095.5399809454325
Next value is larger: False
The search stops near t = 1
Fasit: Programmet går mot høyre i steg på 0,01 og stopper når arealet ikke lenger øker.
Vanlig feil: Å hevde at løkken automatisk beviser et globalt maksimum i alle funksjoner.
Sensorpunkt: Strategi, steglengde, stoppkriterium og begrensning bør forklares.
Del 1 - Oppgave 4bOptimering uten hjelpemidler
Oppgave 4b
Oppgave: Løs oppgaven: Bestem t som gir størst areal for rektangelet når \(A(t)=t(t^2-9)^4\), \(0\le t\le3\).
Vis løsning
Hva spør oppgaven om? Vi skal derivere arealfunksjonen og sammenlikne kritiske punkter og endepunkter.
Steg 1 - Skriv arealet
Fordi fjerde potens er positiv, kan vi skrive \(A(t)=t(9-t^2)^4\).
Steg 2 - Deriver
\[A^{\prime}(t)=(9-t^2)^4-8t^2(9-t^2)^3.\]
Steg 3 - Faktoriser
\[A^{\prime}(t)=9(9-t^2)^3(1-t^2).\]
Steg 4 - Kritiske punkter
I intervallet får vi \(t=1\) og \(t=3\). Endepunktet \(t=0\) må også kontrolleres.
Steg 5 - Sammenlikn
\[A(0)=0,\quad A(1)=8^4=4096,\quad A(3)=0.\]
Steg 6 - Konklusjon
Det største arealet oppnås ved \(t=1\).
GeoGebra/CAS-kontroll
GeoGebra - CAS/grafikk
1
Extremum[t*(t^2-9)^4,0<=t<=3]
maksimum ved \(t=1\), areal \(4096\)
Tolkning: CAS bekrefter det globale maksimumet på intervallet.
Python-kontroll med SymPy
Python 3 - faktisk kjøring
importsympyasspt=sp.symbols("t",real=True)A=t*(t**2-9)**4A_prime=sp.factor(sp.diff(A,t))critical=sp.solve(sp.Eq(A_prime,0),t)candidates=[sp.Integer(0),sp.Integer(1),sp.Integer(3)]values=[(value,sp.simplify(A.subs(t,value)))forvalueincandidates]print("A(t) =",A)print("A'(t) =",A_prime)print("Critical points =",critical)print("Candidates and areas =",values)maximum=max(values,key=lambdapair:pair[1])print("Maximum candidate =",maximum)
Pers svar avhenger litt av avrundingen og den valgte regresjonsmodellen.
GeoGebra/CAS-kontroll
GeoGebra - CAS/grafikk
1
Sum[1700*272.55*1.023^k,k,0,14]
\(8.189\) mill. kr
Tolkning: Den geometriske summen gir Amalies samlede lønn.
Python-kontroll med SymPy
Python 3 - faktisk kjøring
A=277.83265814877024b=1.0154567180236385hours=1700amalie_wages=[272.55*1.023**kforkinrange(15)]per_wages=[A*b**kforkinrange(15)]amalie_total=hours*sum(amalie_wages)per_total=hours*sum(per_wages)print("Number of years =",len(amalie_wages))print("Amalie first hourly wage =",round(amalie_wages[0],6))print("Amalie last hourly wage =",round(amalie_wages[-1],6))print("Amalie total salary =",round(amalie_total,2))print("Per first model wage =",round(per_wages[0],6))print("Per last model wage =",round(per_wages[-1],6))print("Per total salary =",round(per_total,2))print("Difference =",round(amalie_total-per_total,2))
Utskrift fra Python:
Number of years = 15
Amalie first hourly wage = 272.55
Amalie last hourly wage = 374.718434
Amalie total salary = 8188601.24
Per first model wage = 277.832658
Per last model wage = 344.384133
Per total salary = 7905086.29
Difference = 283514.95
Fasit: Amalie: ca. \(8\,188\,601\) kr. Per: ca. \(7\,905\,086\) kr med modellen fra b.
Vanlig feil: Å summere bare 14 lønninger fordi tidsrommet er 14 år langt.
Sensorpunkt: Inkluder begge endepunktsårene og oppgi modellavhengighet.
Del 2 - Oppgave 1dKrav til framtidig lønnsvekst
Oppgave 1d
Oppgave: Per skal i 2025 ha samme timelønn som Amalie. Finn nødvendig årlig prosentvis økning for Per fra 2022.
Vis løsning
Hva spør oppgaven om? Vi skal beregne Amalies lønn i 2025 og løse en treårig vekstlikning for Per.
Steg 1 - Amalies timelønn i 2025
Fra 2008 til 2025 er det 17 vekstperioder: \[272{,}55\cdot1{,}023^{17}\approx401{,}173.\]
Steg 2 - Pers startpunkt
Per har 340,10 kr per time i 2022.
Steg 3 - Tre vekstperioder
La r være årlig vekstrate. Da \[340{,}10(1+r)^3=401{,}173.\]
Vanlig feil: Å sette C lik A+v og dermed forveksle C og D.
Sensorpunkt: Vis vektoraddisjon og parallellogramkontroll.
Del 2 - Oppgave 2bDiagonalens midtpunkt
Oppgave 2b
Oppgave: Bestem t slik at diagonalenes skjæringspunkt er \(P(8,11)\).
Vis løsning
Hva spør oppgaven om? Vi bruker at diagonalene i et parallellogram halverer hverandre.
Steg 1 - Midtpunktet av AC
\[M=\frac{A+C}{2}=(5+t,\frac{7+5t}{2}).\]
Steg 2 - Bruk x-koordinaten
\(5+t=8\), så \(t=3\).
Steg 3 - Kontroller y-koordinaten
\[(7+5\cdot3)/2=22/2=11.\]
Steg 4 - Konklusjon
Begge koordinatene stemmer, så \(t=3\).
Parallellogrammet og diagonalene når t=3.
GeoGebra/CAS-kontroll
GeoGebra - CAS/grafikk
1
Solve[((3+(7+2t))/2=8,(2+(5+5t))/2=11),t]
\(t=3\)
Tolkning: Begge midtpunktslikningene gir samme verdi.
Python-kontroll med SymPy
Python 3 - faktisk kjøring
importsympyasspt=sp.symbols("t",real=True)A=sp.Matrix([3,2])C=sp.Matrix([7+2*t,5+5*t])midpoint=sp.simplify((A+C)/2)solutions=sp.solve([sp.Eq(midpoint[0],8),sp.Eq(midpoint[1],11)],[t],dict=True)print("Midpoint =",tuple(midpoint))print("Solutions =",solutions)value=sp.Integer(3)print("Midpoint at t=3 =",tuple(midpoint.subs(t,value)))B=sp.Matrix([7,5]);D=sp.Matrix([3+2*t,2+5*t])print("Midpoint of BD at t=3 =",tuple(((B+D)/2).subs(t,value)))
Utskrift fra Python:
Midpoint = (t + 5, 5*t/2 + 7/2)
Solutions = [{t: 3}]
Midpoint at t=3 = (8, 11)
Midpoint of BD at t=3 = (8, 11)
Fasit: \(t=3\).
Vanlig feil: Å bruke skjæringspunktet som C i stedet for midtpunktet.
Sensorpunkt: Midtpunktegenskapen og kontroll av begge koordinater må vises.
Del 2 - Oppgave 3aPåstand om logaritmer
Oppgave 3a
Oppgave: Avgjør om påstanden er sann: Hvis \(x>0\), så er \((\ln x)^4=4\ln x\).
Vis løsning
Hva spør oppgaven om? Vi skal enten bevise identiteten eller finne et moteksempel.
Steg 1 - Velg en enkel verdi
Sett \(x=e\), som er positiv.
Steg 2 - Venstre side
\((\ln e)^4=1^4=1\).
Steg 3 - Høyre side
\(4\ln e=4\).
Steg 4 - Konklusjon
Sidene er ulike, så påstanden er usann.
GeoGebra/CAS-kontroll
GeoGebra - CAS/grafikk
1
Substitute[(ln(x))^4-4ln(x),x,e]
\(-3\)
Tolkning: Ett moteksempel avkrefter en universell påstand.
Python-kontroll med SymPy
Python 3 - faktisk kjøring
importsympyasspx=sp.Eleft=sp.log(x)**4right=4*sp.log(x)print("x = e")print("(ln x)^4 =",left)print("4 ln x =",right)print("Difference =",sp.simplify(left-right))print("Statement true for all x>0:",left==right)
Utskrift fra Python:
x = e
(ln x)^4 = 1
4 ln x = 4
Difference = -3
Statement true for all x>0: False
Fasit: Usann; \(x=e\) gir 1 på venstre side og 4 på høyre.
Vanlig feil: Å forveksle potensregelen \(\ln(x^4)=4\ln x\) med \((\ln x)^4\).
Sensorpunkt: Et tydelig moteksempel og riktig logaritmeregel holder.
Del 2 - Oppgave 3bEkstremalpunkt for fjerdegrad
Oppgave 3b
Oppgave: Avgjør om alle fjerdegradsfunksjoner må ha minst ett ekstremalpunkt.
Vis løsning
Hva spør oppgaven om? Vi skal bruke endeadferden og kontinuiteten til en reell fjerdegradsfunksjon.
Steg 1 - Generell form
En fjerdegradsfunksjon har ledende ledd \(ax^4\), der \(a\ne0\).
Steg 2 - Endeadferd
Hvis \(a>0\), går funksjonen mot \(+\infty\) i begge retninger; hvis \(a<0\), går den mot \(-\infty\) i begge retninger.
Steg 3 - Kontinuitet
Polynomet er kontinuerlig og må derfor oppnå et globalt minimum når \(a>0\), eller globalt maksimum når \(a<0\).
Steg 4 - Derivert perspektiv
Den deriverte er et tredjegradspolynom som går fra ett fortegn til det motsatte, og har minst ett fortegnsskiftende nullpunkt.
Steg 5 - Konklusjon
Påstanden er sann.
GeoGebra/CAS-kontroll
GeoGebra - CAS/grafikk
1
Degree[a*x^4+b*x^3+c*x^2+d*x+e,x]
4
Tolkning: Lik endeadferd på begge sider tvinger fram et ekstremum.
Python-kontroll med SymPy
Python 3 - faktisk kjøring
importsympyasspx=sp.symbols("x",real=True)examples=[x**4+x,-x**4+3*x,2*x**4-5*x**2+1]forfinexamples:derivative=sp.diff(f,x)roots=sp.nroots(derivative)real_roots=[rootforrootinrootsifabs(complex(root).imag)<1e-10]print("f(x) =",f)print("f'(x) =",derivative)print("Real stationary points =",real_roots)print("A real cubic derivative always has at least one real root")print("Its leading term changes sign between minus and plus infinity")
Utskrift fra Python:
f(x) = x**4 + x
f'(x) = 4*x**3 + 1
Real stationary points = [-0.629960524947437]
f(x) = -x**4 + 3*x
f'(x) = 3 - 4*x**3
Real stationary points = [0.908560296416070]
f(x) = 2*x**4 - 5*x**2 + 1
f'(x) = 8*x**3 - 10*x
Real stationary points = [-1.11803398874989, 0, 1.11803398874989]
A real cubic derivative always has at least one real root
Its leading term changes sign between minus and plus infinity
Fasit: Sann. Enhver reell fjerdegradsfunksjon har minst ett lokalt/globalt ekstremalpunkt.
Vanlig feil: Å si bare at den deriverte har en rot; man bør også sikre at minst én rot gir fortegnsskifte.
Sensorpunkt: Endeadferd eller fortegnsskifte i den deriverte må begrunnes.
Del 2 - Oppgave 3cNødvendig vilkår for omvendt funksjon
Oppgave 3c
Oppgave: Avgjør om en funksjon med omvendt funksjon må være strengt voksende eller strengt avtakende.
Vis løsning
Hva spør oppgaven om? Vi skal skille mellom det nødvendige kravet injektivitet og det sterkere monotonicitetskravet.
Steg 1 - Det egentlige kravet
En omvendt funksjon finnes når funksjonen er en-til-en på definisjonsmengden.
Steg 2 - Monotoni er tilstrekkelig
En strengt monoton funksjon er injektiv, men dette er ikke nødvendig for vilkårlige definisjonsmengder eller diskontinuerlige funksjoner.
Steg 3 - Moteksempel
På domenet \(\{0,1,2\}\) kan vi definere \(f(0)=0\), \(f(1)=2\), \(f(2)=1\).
Steg 4 - Kontroller
Alle funksjonsverdiene er ulike, så funksjonen er injektiv. Verdiene 0,2,1 er verken strengt voksende eller strengt avtakende.
Steg 5 - Konklusjon
Påstanden er usann i den generelle formuleringen.
GeoGebra/CAS-kontroll
GeoGebra - CAS/grafikk
1
Unique[{0,2,1}]
true
Tolkning: Ulike funksjonsverdier gir en omvendt funksjon selv om rekkefølgen ikke er monoton.
Fasit: Usann generelt. Det nødvendige kravet er at funksjonen er injektiv.
Vanlig feil: Å glemme at streng monotoni er et praktisk tilstrekkelig kriterium på intervaller, ikke den generelle definisjonen.
Sensorpunkt: Et gyldig injektivt, ikke-monotont moteksempel må forklares.
Del 2 - Oppgave 4aHorisontallinjetest
Oppgave 4a
Oppgave: Avgjør for grafene f, g, h og k om funksjonen har en omvendt funksjon.
Vis løsning
Hva spør oppgaven om? Vi skal bruke horisontallinjetesten på hver graf.
Steg 1 - f
Grafen er symmetrisk om y-aksen. Mange horisontale linjer skjærer grafen to ganger, så f er ikke injektiv.
Steg 2 - g
Grafen er strengt voksende fra startpunktet og videre. Hver horisontal linje skjærer høyst én gang, så g har omvendt funksjon.
Steg 3 - h
De to grafdelene gir samme y-verdier for enkelte nivåer, blant annet omkring \(y=2\). Derfor er h ikke injektiv.
Steg 4 - k
Grafen er strengt avtakende fra startpunktet og videre. Derfor har k en omvendt funksjon.
Steg 5 - Konklusjon
Bare g og k består horisontallinjetesten.
De fire grafene fra originaleksamen.
GeoGebra/CAS-kontroll
GeoGebra - CAS/grafikk
1
HorizontalLineTest
g og k
Tolkning: Grafene g og k er en-til-en.
Python-kontroll med SymPy
Python 3 - faktisk kjøring
functions={"f":{"injective":False,"reason":"symmetric branches"},"g":{"injective":True,"reason":"strictly increasing"},"h":{"injective":False,"reason":"overlapping y-values"},"k":{"injective":True,"reason":"strictly decreasing"},}forname,informationinfunctions.items():print(name,"has inverse:",information["injective"])print("reason:",information["reason"])print("Functions with inverses =",[nameforname,infoinfunctions.items()ifinfo["injective"]])
Utskrift fra Python:
f has inverse: False
reason: symmetric branches
g has inverse: True
reason: strictly increasing
h has inverse: False
reason: overlapping y-values
k has inverse: True
reason: strictly decreasing
Functions with inverses = ['g', 'k']
Fasit: f: nei, g: ja, h: nei, k: ja.
Vanlig feil: Å bruke vertikallinjetesten; den tester om en graf er en funksjon, ikke om funksjonen er injektiv.
Sensorpunkt: Hver graf må vurderes og begrunnes separat.
Del 2 - Oppgave 4bDefinisjonsmengde til omvendt funksjon
Oppgave 4b
Oppgave: Bestem definisjonsmengden til den omvendte funksjonen i tilfellene der den finnes.
Vis løsning
Hva spør oppgaven om? Definisjonsmengden til en omvendt funksjon er verdimengden til originalfunksjonen.
Steg 1 - g
Grafen til g starter ved \(y=1\) med inkludert endepunkt og fortsetter oppover. Derfor er \(V_g=[1,\infty)\).
Steg 2 - Inversen til g
\[D_{g^{-1}}=[1,\infty).\]
Steg 3 - k
Grafen til k starter ved \(y=3\) med inkludert endepunkt og fortsetter nedover. Derfor er \(V_k=(-\infty,3]\).
Steg 4 - Inversen til k
\[D_{k^{-1}}=(-\infty,3].\]
Steg 5 - f og h
De har ingen omvendt funksjon på de viste definisjonsmengdene.
GeoGebra/CAS-kontroll
GeoGebra - CAS/grafikk
1
Range[g], Range[k]
\([1,\infty)\), \(( -\infty,3]\)
Tolkning: Verdimengdene blir domenene til inversene.
Python-kontroll med SymPy
Python 3 - faktisk kjøring
interval_g="[1, infinity)"interval_k="(-infinity, 3]"print("Range of g =",interval_g)print("Domain of inverse g =",interval_g)print("Range of k =",interval_k)print("Domain of inverse k =",interval_k)print("f has no inverse on shown domain")print("h has no inverse on shown domain")
Utskrift fra Python:
Range of g = [1, infinity)
Domain of inverse g = [1, infinity)
Range of k = (-infinity, 3]
Domain of inverse k = (-infinity, 3]
f has no inverse on shown domain
h has no inverse on shown domain
Fasit: \(D_{g^{-1}}=[1,\infty)\) og \(D_{k^{-1}}=(-\infty,3]\).
Vanlig feil: Å oppgi definisjonsmengden til g og k i stedet for verdimengden.
Sensorpunkt: Les endepunkter og fortsettelsesretning direkte fra grafene.
Del 2 - Oppgave 5aDesibel og logaritmer
Oppgave 5a
Oppgave: Sammenhengen er \(L=120+10\lg I\). Bestem I når \(L=130\) dB.
Vis løsning
Hva spør oppgaven om? Vi skal isolere tierlogaritmen og oppheve den med en tierpotens.
Ved nøyaktig \(50\sqrt{10}\) m er nivået 130 dB. For å være lavere må avstanden være større enn dette.
Steg 5 - Praktisk svar
Man må være litt mer enn 158 m fra flyet.
Sammenhengen mellom avstand og lydstyrke.
GeoGebra/CAS-kontroll
GeoGebra - CAS/grafikk
1
Solve[140-20*log(10,r/50)=130,r]
\(r=50\sqrt{10}\)
Tolkning: Terskelavstanden er ca. 158,1 m.
Python-kontroll med SymPy
Python 3 - faktisk kjøring
importsympyasspr=sp.symbols("r",positive=True)threshold=50*sp.sqrt(10)L=140-20*sp.log(r/50,10)print("Threshold distance exact =",threshold)print("Threshold distance decimal =",sp.N(threshold,12))print("Sound level at threshold =",sp.simplify(L.subs(r,threshold)))fordistancein[158,159,160]:level=sp.N(L.subs(r,distance),10)print("r =",distance,"m, L =",level,"dB")print("Condition for L < 130: r > 50*sqrt(10)")
Utskrift fra Python:
Threshold distance exact = 50*sqrt(10)
Threshold distance decimal = 158.113883008
Sound level at threshold = 130
r = 158 m, L = 130.0062583 dB
r = 159 m, L = 129.9514576 dB
r = 160 m, L = 129.8970004 dB
Condition for L < 130: r > 50*sqrt(10)
Tolkning: GeoGebra gir den eksakte punkt-linje-avstanden.
Python-kontroll med SymPy
Python 3 - faktisk kjøring
importsympyasspA=sp.Point(4,-2)B=sp.Point(6,6)P=sp.Point(2,8)line=sp.Line(A,B)distance=sp.simplify(line.distance(P))standard_numerator=abs(4*2-8-18)print("Line through A and B:",line)print("Standard equation: 4*x - y - 18 = 0")print("Numerator =",standard_numerator)print("Denominator =",sp.sqrt(17))print("Exact distance =",distance)print("Rationalized =",sp.radsimp(distance))print("Decimal distance =",sp.N(distance,12))
Utskrift fra Python:
Line through A and B: Line2D(Point2D(4, -2), Point2D(6, 6))
Standard equation: 4*x - y - 18 = 0
Numerator = 18
Denominator = sqrt(17)
Exact distance = 18*sqrt(17)/17
Rationalized = 18*sqrt(17)/17
Decimal distance = 4.36564125065
Fasit: \(d=18/\sqrt{17}=18\sqrt{17}/17\).
Vanlig feil: Å bruke avstanden til A eller B i stedet for den vinkelrette avstanden.
Sensorpunkt: Linjelikning og korrekt avstandsformel må vises.
Del 2 - Oppgave 6bMinste avstand mellom graf og linje
Oppgave 6b
Oppgave: For \(f(x)=x^2+2x\), finn eksakt minste avstand mellom grafen og linjen \(\ell\).
Vis løsning
Hva spør oppgaven om? Vi skal uttrykke avstanden fra et vilkårlig punkt på grafen til linjen og minimere.
Steg 1 - Punkt på grafen
Et vilkårlig punkt er \(Q=(x,x^2+2x)\).
Steg 2 - Avstandsuttrykk
\[d(x)=\frac{|4x-(x^2+2x)-18|}{\sqrt{17}}.\]
Steg 3 - Forenkle absoluttverdien
Uttrykket inni er \(-[(x-1)^2+17]\), alltid negativt. Derfor \[d(x)=\frac{(x-1)^2+17}{\sqrt{17}}.\]
Steg 4 - Minimer
Kvadratet er minst 0 ved \(x=1\).
Steg 5 - Minste avstand
\[d_{\min}=\frac{17}{\sqrt{17}}=\sqrt{17}.\]
Steg 6 - Geometrisk kontroll
Parabeltangenten ved \(x=1\) har stigning \(f^{\prime}(1)=4\), altså samme retning som linjen. Den korteste forbindelsen er derfor normal på begge.
importsympyasspx=sp.symbols("x",real=True)f=x**2+2*xnumerator=sp.simplify(abs(4*x-f-18))positive_form=(x-1)**2+17distance=positive_form/sp.sqrt(17)derivative=sp.diff(distance,x)critical=sp.solve(sp.Eq(derivative,0),x)minimum=sp.simplify(distance.subs(x,critical[0]))print("Point on graph = (x,",f,")")print("Expression before absolute value =",sp.expand(4*x-f-18))print("Positive numerator =",positive_form)print("Distance function =",distance)print("Derivative =",derivative)print("Critical x =",critical)print("Minimum distance =",minimum)print("Tangent slope at x=1 =",sp.diff(f,x).subs(x,1))
Utskrift fra Python:
Point on graph = (x, x**2 + 2*x )
Expression before absolute value = -x**2 + 2*x - 18
Positive numerator = (x - 1)**2 + 17
Distance function = sqrt(17)*((x - 1)**2 + 17)/17
Derivative = sqrt(17)*(2*x - 2)/17
Critical x = [1]
Minimum distance = sqrt(17)
Tangent slope at x=1 = 4
Fasit: \(\sqrt{17}\).
Vanlig feil: Å minimere bare vertikal avstand mellom grafene.
Sensorpunkt: Bruk vinkelrett punkt-linje-avstand og kontroller minimumet.
Del 2 - Oppgave 7Programmering og funksjonsgjennomsnitt
Oppgave 7
Oppgave: Lag et program som bruker den oppgitte algoritmen for å finne gjennomsnittet til \(f(x)=\sqrt{x}\) på \([0,1]\). Hva blir gjennomsnittet?
Vis løsning
Hva spør oppgaven om? Vi skal implementere N+1 jevnt fordelte punkter, ta middelverdien og sammenlikne med den eksakte integralverdien.
Steg 1 - Velg N
Et stort N gir en bedre tilnærming; vi bruker for eksempel \(N=1\,000\,000\).
Steg 2 - Lag prøvepunkter
\[x_i=0+i/N,\qquad i=0,1,\ldots,N.\]
Steg 3 - Beregn funksjonsverdiene
For hvert punkt beregnes \(\sqrt{x_i}\).
Steg 4 - Middelverdi
\[g_N=\frac1{N+1}\sum_{i=0}^{N}\sqrt{x_i}.\]
Steg 5 - Numerisk resultat
Programmet gir omtrent \(0{,}6666665\).
Steg 6 - Eksakt kontroll
Det eksakte funksjonsgjennomsnittet er \[\frac1{1-0}\int_0^1\sqrt{x}\,dx=\frac23.\]
Steg 7 - Konklusjon
Gjennomsnittet er \(2/3\approx0{,}6667\).
Prøvepunkter og den eksakte gjennomsnittsverdien.
GeoGebra/CAS-kontroll
GeoGebra - CAS/grafikk
1
Mean[Sequence[sqrt(i/N),i,0,N]]
\(\approx0.6666665\)
Tolkning: Den diskrete middelverdien nærmer seg 2/3 når N øker.
Python-kontroll med SymPy
Python 3 - faktisk kjøring
importmathdefapproximate_average(N):ifN<=0:raiseValueError("N must be a positive integer")total=0.0step=1.0/Nforiinrange(N+1):x=i*steptotal+=math.sqrt(x)returntotal/(N+1)forNin[10,100,1000,1000000]:approximation=approximate_average(N)print("N =",N)print("approximate average =",format(approximation,".12f"))print("error from 2/3 =",format(approximation-2/3,".12e"))exact_average=2/3print("Exact average from integral =",exact_average)
Utskrift fra Python:
N = 10
approximate average = 0.645917583370
error from 2/3 = -2.074908329683e-02
N = 100
approximate average = 0.664814799112
error from 2/3 = -1.851867554639e-03
N = 1000
approximate average = 0.666493640753
error from 2/3 = -1.730259137377e-04
N = 1000000
approximate average = 0.666666499792
error from 2/3 = -1.668743561112e-07
Exact average from integral = 0.6666666666666666
Fasit: Gjennomsnittet er \(\dfrac23\approx0{,}6667\).
Vanlig feil: Å dele summen på N selv om algoritmen bruker N+1 funksjonsverdier.
Sensorpunkt: Programmet må følge algoritmen, dokumentere N og tolke konvergensen.
Kilde og metode: Oppgavetekstene er transkribert fra Utdanningsdirektoratets eksamenssett REA3056 Matematikk R1, våren 2023 (LK20). Løsningene er originale. Alle Python-blokker er kjørt ved generering, og lagret utskrift er hentet direkte fra kjøringen. Grafoppgave 4 er kontrollert mot originalens sidebilde.
ifingo-lærerenHjelper deg å forstå
ifingo-læreren hjelper deg å forstå – ikke å gjøre leksene for deg 💜