Komplett bokmål-løsningsforslag basert på Udir-settet S1_H07_eksempel.pdf. Oppgavene er skrevet med ryddig MathJax, trinnvise forklaringer, GeoGebra CAS-linjer og realistiske Python-kontroller i nøytral kodevisning.
Del 1
Del 1 løses uten digitale hjelpemidler i hovedresonnementet. Python og GeoGebra vises bare som kontroll.
Del 1 · Oppgave 1a1Derivasjon
Oppgave 1a1
Oppgave:
Gitt funksjonen \(f(x)=x^3-3x+1\). Finn gjennomsnittlig veksthastighet mellom \(x=1\) og \(x=3\).
Vis løsning
Steg 1 - Regn ut funksjonsverdiene
Vi trenger verdien i startpunktet og sluttpunktet: \[f(1)=1^3-3\cdot 1+1=-1,\qquad f(3)=3^3-3\cdot 3+1=19.\]
Steg 2 - Bruk formelen for gjennomsnittlig veksthastighet
Gjennomsnittlig veksthastighet fra \(x=1\) til \(x=3\) er stigningstallet til sekanten:
\[\frac{f(3)-f(1)}{3-1}=\frac{19-(-1)}{2}=10.\]
Tolkning
I dette intervallet øker funksjonsverdien i gjennomsnitt med \(10\) per \(x\)-enhet.
Vanlig feil: Å bruke den deriverte direkte. Her spørres det om gjennomsnittlig vekst, ikke momentan vekst.
Siden koeffisienten foran \(x^2\) er negativ, vender parabelen nedover. Punktet \(x=10\) gir derfor maksimum.
Steg 4 - Regn ut arealet
\[A(10)=-10^2+20\cdot 10=100.\]
Tolkning
Det største arealet får vi når rektanglet er et kvadrat med sider \(10\) og \(10\).
Digital kontroll
GeoGebra · CAS
1
Ekstremalpunkt(-x^2+20x)
→ \(x=10\)
2
A(10)
→ \(100\)
Python-kontroll
from sympy import symbols, diff, solve
x = symbols('x')
A = -x**2 + 20*x
A_derivert = diff(A, x)
kritiske = solve(A_derivert, x)
print("A(x) =", A)
print("A'(x) =", A_derivert)
print("Kritisk punkt:", kritiske)
for verdi in kritiske:
print(f"A({verdi}) =", A.subs(x, verdi))
print("Andrederivert:", diff(A_derivert, x), "som er negativ, så dette er maksimum")
Fasit: \(100\)
Del 1 · Oppgave 1cAlgebraisk forenkling
Oppgave 1c
Oppgave:
Skriv så enkelt som mulig: \(1-\dfrac{2x-2}{x^2-1}\).
Verdien \(x=\dfrac{7}{2}\) er verken \(2\) eller \(5\), så den er gyldig.
Digital kontroll
GeoGebra · CAS
1
Løs(x/(x-2)+(x-3)/(x-5)=2,x)
→ \(x=\dfrac{7}{2}\)
2
x≠2, x≠5
→ gyldig
Python-kontroll
from sympy import symbols, Eq, solve, simplify
x = symbols('x')
likning = Eq(x/(x - 2) + (x - 3)/(x - 5), 2)
losninger = solve(likning, x)
print("Likning:", likning)
print("Løsninger fra SymPy:", losninger)
for verdi in losninger:
venstre = simplify(likning.lhs.subs(x, verdi))
hoyre = simplify(likning.rhs.subs(x, verdi))
print(f"x={verdi}: venstre = {venstre}, høyre = {hoyre}, gyldig = {verdi not in [2,5]}")
Fasit: \(x=\dfrac{7}{2}\)
Del 1 · Oppgave 1gEksponentiallikning
Oppgave 1g
Oppgave:
Løs likningen \(10^{2x}-10^x-6=0\).
Vis løsning
Steg 1 - Substituer
Sett \(u=10^x\). Da er \(10^{2x}=(10^x)^2=u^2\). Likningen blir
\[u^2-u-6=0.\]
Steg 2 - Faktoriser
\[u^2-u-6=(u-3)(u+2).\]
Steg 3 - Vurder mulige \(u\)-verdier
Vi får \(u=3\) eller \(u=-2\). Men \(u=10^x>0\), så \(u=-2\) forkastes.
Steg 4 - Løs for \(x\)
\[10^x=3\quad\Longrightarrow\quad x=\lg 3.\]
Digital kontroll
GeoGebra · CAS
1
Løs(10^(2x)-10^x-6=0,x)
→ \(x=\log_{10}(3)\)
2
N( log10(3) )
→ \(0{,}4771\)
Python-kontroll
from sympy import symbols, Eq, solve, log, N
x, u = symbols('x u')
likning_u = Eq(u**2 - u - 6, 0)
los_u = solve(likning_u, u)
print("Substitusjon: u = 10^x")
print("Likning i u:", likning_u)
print("Løsninger for u:", los_u)
print("Bare u=3 er mulig fordi 10^x > 0")
print("x = log(3, 10) =", log(3, 10))
print("Desimalverdi:", N(log(3, 10), 8))
Fasit: \(x=\lg 3\)
Del 1 · Oppgave 1hPascals trekant
Oppgave 1h
Oppgave:
Skriv opp de syv første radene av Pascals talltrekant. Marker hvor du finner binomialkoeffisientene \(\binom{5}{1}\), \(\binom{5}{2}\) og \(\binom{5}{4}\).
Vis løsning
Steg 1 - Skriv radene
Vi nummererer radene fra \(n=0\):
Rad
Tall
0
1
1
1 1
2
1 2 1
3
1 3 3 1
4
1 4 6 4 1
5
1 5 10 10 5 1
6
1 6 15 20 15 6 1
Steg 2 - Finn koeffisientene
I rad \(5\) finner vi koeffisientene til \((a+b)^5\):
Koeffisienten \(\binom{n}{k}\) står i rad \(n\), posisjon \(k\), når første posisjon er \(k=0\).
Digital kontroll
GeoGebra · CAS
1
Binomial(5,1)
→ \(5\)
2
Binomial(5,2)
→ \(10\)
3
Binomial(5,4)
→ \(5\)
Python-kontroll
from math import comb
for n in range(7):
rad = [comb(n, k) for k in range(n + 1)]
print(f"Rad {n}:", rad)
print("C(5,1) =", comb(5, 1))
print("C(5,2) =", comb(5, 2))
print("C(5,4) =", comb(5, 4))
from math import comb
from fractions import Fraction
n = 5
k = 2
p = Fraction(1, 2)
sannsynlighet = comb(n, k) * p**k * (1 - p)**(n - k)
print("n =", n)
print("k =", k)
print("p =", p)
print("C(5,2) =", comb(5, 2))
print("Sannsynlighet som brøk:", sannsynlighet)
print("Sannsynlighet som desimaltall:", float(sannsynlighet))
Fasit: \(\dfrac{5}{16}=0{,}3125\)
Del 2
Del 2 inneholder kombinatorikk, kostnadsfunksjoner og lineær optimering. Begge alternativene i oppgave 4 er løst.
Del 2 · Oppgave 2aHypergeometrisk sannsynlighet
Oppgave 2a
Oppgave:
I en klasse er det \(25\) elever, \(14\) jenter og \(11\) gutter. Det trekkes ut \(6\) elever. Hva er sannsynligheten for at det trekkes ut \(4\) jenter og \(2\) gutter?
Vis løsning
Steg 1 - Velg gunstige grupper
Vi må velge \(4\) av \(14\) jenter og \(2\) av \(11\) gutter:
from math import comb
from fractions import Fraction
gunstige = comb(14, 4) * comb(11, 2)
totalt = comb(25, 6)
P = Fraction(gunstige, totalt)
print("Gunstige utvalg:", gunstige)
print("Totalt antall utvalg:", totalt)
print("Sannsynlighet som brøk:", P)
print("Sannsynlighet som desimaltall:", round(float(P), 6))
Bruk opplysningene til å sette opp ulikhetene som \(x\) og \(y\) må oppfylle.
Vis løsning
Steg 1 - Modell M40
A produserer \(80\) og B produserer \(18\) per uke. Bestillingen er \(162\):
\[80x+18y\ge 162.\]
Steg 2 - Modell M30
\[6x+15y\ge 60.\]
Steg 3 - Modell M20
\[38x+20y\ge 140.\]
Steg 4 - Ikke-negative variabler
\[x\ge 0,\qquad y\ge 0.\]
Digital kontroll
GeoGebra · CAS
1
80x+18y≥162
→ M40
2
6x+15y≥60
→ M30
3
38x+20y≥140
→ M20
Python-kontroll
from sympy import symbols
x, y = symbols('x y')
ulikheter = [80*x + 18*y >= 162, 6*x + 15*y >= 60, 38*x + 20*y >= 140, x >= 0, y >= 0]
print("Ulikheter for produksjonskrav:")
for u in ulikheter:
print(" ", u)
print("Disse uttrykker at produsenten minst må oppfylle bestillingen.")
Alle ulikhetene er av typen \(\ge\), så løsningen ligger på siden som gir nok produksjon. I tillegg må \(x\) og \(y\) være ikke-negative.
Steg 3 - Skisse
Det interessante hjørnet for minimumskostnaden ligger der linjene for M30 og M20 møtes.
Skissen viser et mulig løsningsområde. Minimum ligger i et hjørne av området.
Digital kontroll
GeoGebra · CAS
1
Halvplaner med ≥-ulikheter
→ fellesområde
Python-kontroll
# Numerisk sjekk av hjørnepunktene i løsningsområdet
from fractions import Fraction
punkter = [(0, 9), (Fraction(180, 229), Fraction(1261, 229)), (2, Fraction(16, 5)), (10, 0)]
for x, y in punkter:
krav = [80*x + 18*y, 6*x + 15*y, 38*x + 20*y]
print(f"Punkt ({x}, {y}) gir produksjon M40/M30/M20 = {krav}")
print("Bare punkter som oppfyller alle kravene er aktuelle i det skraverte området.")
Fasit: Løsningsområdet er fellesområdet i første kvadrant som ligger på riktig side av alle tre kravlinjene.
Del 2 · Oppgave 4 Alt I dLineær optimering
Oppgave 4 Alternativ I d
Oppgave:
Hvor mange uker må avdeling A og avdeling B jobbe for at produksjonskostnaden skal bli lavest mulig?
Vis løsning
Steg 1 - Bruk at optimum ligger i et hjørne
Ved lineær optimering med lineære ulikheter finner vi minimum i et hjørnepunkt av løsningsområdet.
Steg 2 - Finn aktuelle hjørner
De aktuelle hjørnene er blant annet \((0,9)\), \(\left(\frac{180}{229},\frac{1261}{229}\right)\), \((2,\frac{16}{5})\) og \((10,0)\).
Steg 3 - Regn kostnadene
Punkt
Kostnad
\((0,9)\)
\(180000\)
\(\left(\frac{180}{229},\frac{1261}{229}\right)\)
ca. \(128996\)
\((2,\frac{16}{5})\)
\(112000\)
\((10,0)\)
\(240000\)
Konklusjon
Lavest kostnad fås når \(x=2\) og \(y=\frac{16}{5}=3{,}2\).
Digital kontroll
GeoGebra · CAS
1
Minimer(24000x+20000y)
→ \((2,3{,}2)\)
2
f(2,3.2)
→ \(112000\)
Python-kontroll
from fractions import Fraction
punkter = [(0, 9), (Fraction(180, 229), Fraction(1261, 229)), (2, Fraction(16, 5)), (10, 0)]
def kostnad(x, y):
return 24000*x + 20000*y
for p in punkter:
x, y = p
print(f"Punkt {p}: kostnad = {kostnad(x, y)} = {float(kostnad(x, y)):.2f}")
print("Minimum fås ved x=2 og y=16/5 = 3.2")
Fasit: Avdeling A: \(2\) uker. Avdeling B: \(3{,}2\) uker. Minste kostnad er \(112000\) kr.
Del 2 · Oppgave 4 Alt II aLineær optimering
Oppgave 4 Alternativ II a
Oppgave:
Forklar at fortjenesten er gitt ved uttrykket \(600x+500y\), der \(x\) er antall crossykler og \(y\) er antall racersykler.
Vis løsning
Steg 1 - Tolk variablene
Hver crossykkel gir \(600\) kr i fortjeneste, og hver racersykkel gir \(500\) kr.
Steg 2 - Multipliser antall med fortjeneste per sykkel
\[\text{fortjeneste fra cross}=600x,\qquad \text{fortjeneste fra racer}=500y.\]
Steg 3 - Summer
\[F(x,y)=600x+500y.\]
Digital kontroll
GeoGebra · CAS
1
F(x,y)=600x+500y
→ fortjenestefunksjon
Python-kontroll
from sympy import symbols
x, y = symbols('x y')
F = 600*x + 500*y
print("Fortjeneste per cross:", 600)
print("Fortjeneste per racer:", 500)
print("Fortjenestefunksjon:", F)
print("Eksempel: F(160, 220) =", F.subs({x:160, y:220}))
Fasit: \(F(x,y)=600x+500y\)
Del 2 · Oppgave 4 Alt II bUlikheter
Oppgave 4 Alternativ II b
Oppgave:
Sett opp ulikhetene som \(x\) og \(y\) må oppfylle.
Vis løsning
Steg 1 - Sveiseavdelingen
Cross bruker \(2\) timer og racer \(4\) timer. Kapasiteten er \(1200\) timer:
\[2x+4y\le 1200.\]
Steg 2 - Lakkeringsavdelingen
\[3x+2y\le 1000.\]
Steg 3 - Salgsbegrensninger
\[x\le 160,\qquad y\le 300.\]
Steg 4 - Ikke-negative variabler
\[x\ge0,\qquad y\ge0.\]
Digital kontroll
GeoGebra · CAS
1
2x+4y≤1200
→ sveis
2
3x+2y≤1000
→ lakk
3
x≤160, y≤300
→ salg
Python-kontroll
from sympy import symbols
x, y = symbols('x y')
ulikheter = [2*x + 4*y <= 1200, 3*x + 2*y <= 1000, x <= 160, y <= 300, x >= 0, y >= 0]
print("Begrensninger i modellen:")
for u in ulikheter:
print(" ", u)
Fasit: \(x=160\), \(y=220\), maksimal fortjeneste \(206000\) kr.
Del 2 · Oppgave 4 Alt II dLineær optimering i tre variabler
Oppgave 4 Alternativ II d
Oppgave:
Bedriften starter også produksjon av hybridsykler med fortjeneste \(700\) kr, \(4\) timer i sveising, \(3\) timer i lakkering og maksimalt \(200\) hybridsykler. La \(z\) være antall hybridsykler. Bestem \(x\), \(y\) og \(z\) som gjør fortjenesten størst mulig.
Med tre variabler undersøker vi hjørnepunktene i det tredimensjonale mulighetsområdet. Det beste aktuelle punktet er der begge kapasitetsbegrensningene er aktive og \(z=200\).
import itertools
import numpy as np
# Maksimer F = 600x + 500y + 700z
# Begrensninger: 2x+4y+4z<=1200, 3x+2y+3z<=1000, x<=160, y<=300, z<=200, x,y,z>=0
constraints = [
(2, 4, 4, 1200, "sveis"),
(3, 2, 3, 1000, "lakk"),
(1, 0, 0, 160, "xmax"),
(0, 1, 0, 300, "ymax"),
(0, 0, 1, 200, "zmax"),
(-1, 0, 0, 0, "x0"),
(0, -1, 0, 0, "y0"),
(0, 0, -1, 0, "z0"),
]
def feasible(p):
x, y, z = p
return all(a*x + b*y + c*z <= d + 1e-9 for a, b, c, d, _ in constraints)
def profit(p):
x, y, z = p
return 600*x + 500*y + 700*z
candidates = []
for combi in itertools.combinations(constraints, 3):
A = np.array([[c[0], c[1], c[2]] for c in combi], dtype=float)
b = np.array([c[3] for c in combi], dtype=float)
if abs(np.linalg.det(A)) < 1e-9:
continue
point = tuple(np.linalg.solve(A, b))
if feasible(point):
candidates.append((profit(point), point, [c[4] for c in combi]))
best = max(candidates, key=lambda item: item[0])
print("Antall hjørnepunkter sjekket:", len(candidates))
print("Beste fortjeneste:", best[0])
print("Beste punkt (x,y,z):", best[1])
print("Aktive begrensninger:", best[2])
for item in sorted(candidates, reverse=True)[:5]:
print("Kandidat:", item)
Fasit: \(x=100\), \(y=50\), \(z=200\). Maksimal fortjeneste er \(225000\) kr.
Kontroll før publisering
HTML-filen er kontrollert for MathJax-delimitere, balanserte parenteskommandoer, fravær av dollartegn som matteformat, nøytral Python-visning, separate GeoGebra-bokser og fravær av varme eller neonpregede highlight-farger.
ifingo-lærerenHjelper deg å forstå
ifingo-læreren hjelper deg å forstå – ikke å gjøre leksene for deg 💜