.Du lager et program for å håndtere tippingkuponger for fotballresultat. Du har tidligere laget en funksjon som analyserer en tippekupong. Du ønsker nå å bruke funksjonen til å få en oversikt over vinneroddsen i fotballtipping.
Lag et script som genererer 10000 tilfeldige tippekuponger og resultat, for hver av dem regner ut hvor mange korrekte gjetninger det var i kupongen, og som til slutt lager et histogram som viser fordelingen av antall korrekte resultat i tippekupongene.
Utdelt kode
function retur = kvadratrot(tall)
x = 1;
er_over_feilgrense = true;
i = 1;
N = 4;
retur = zeros(1, N);
retur(1) = x;
while er_over_feilgrense
ny_x = x + (tall - x^2)/(2*x);
relativ_endring = abs(ny_x - x)/x;
er_over_feilgrense = relativ_endring >= 1e-9;
x = ny_x;
i = i + 1;
if i > N
N = 2*N;
retur(N) = 0;
end
retur(i) = x;
end
retur = retur(1:i);
end |
|
Videoforklaring (12:06)
Del 1 (7:18) | Del 2 (4:48) |
---|
 |  |
Oppgaveintroduksjon, og skriving av funksjon som bruker funksjonsvariabler. | Bruk av generisk funksjon vha anonyme funksjoner og andre funksjonsvariabler.. |
Løsningsforslag
function retur = finn_nullpunkt(f, df)
x = 1;
er_over_feilgrense = true;
i = 1;
N = 4;
retur = zeros(1, N);
retur(1) = x;
while er_over_feilgrense
ny_x = x - f(x)/df(x);
relativ_endring = abs(ny_x - x)/abs(x);
er_over_feilgrense = relativ_endring >= 1e-9;
x = ny_x;
i = i + 1;
if i > N
N = 2*N;
retur(N) = 0;
end
retur(i) = x;
end
retur = retur(1:i);
end |
function retur = kvadratrot(tall)
f = @(x) tall - x^2;
df = @(x) -2*x;
estimat = finn_nullpunkt(f, df);
retur = estimat(end);
end |
|