Rekursive sammenhenger og programmering

En REKURSIV formel definerer et ledd ut fra det/de FORRIGE leddet («neste = forrige pluss/ganger noe»), i motsetning til en EKSPLISITT formel som gir leddet direkte fra nn. Rekursive sammenhenger egner seg godt for PROGRAMMERING: en løkke som oppdaterer en verdi steg for steg, gjentatt like mange ganger som antall ledd du vil finne.

Rekursiv vekst

an=f(an1)a_n = f(a_{n-1})

Eksplisitt vs. rekursiv formel
TypeEksempel
Eksplisittaₙ = 200 · 0,8ⁿ (gir aₙ direkte fra n)
Rekursivaₙ = 0,8 · aₙ₋₁, a₀ = 200 (bygger på forrige ledd)

Tips

  • En rekursiv formel trenger ALLTID en STARTVERDI (a0a_0 eller a1a_1) i tillegg til selve regelen – uten en startverdi kan du ikke regne ut noe som helst.
  • Skriv opp fremgangsmåten som en NUMMERERT liste med steg (start, oppdater, gjenta) – det er nettopp dette en programløkke gjør, bare med kode i stedet for ord.

Eksempel: Modellere nedbrytning av et kjemisk stoff rekursivt

Et kjemisk stoff i en løsning brytes ned slik at 20 %20\ \% forsvinner hver time. Konsentrasjonen starter på 200200 mg/L. Sett opp en rekursiv formel, og finn konsentrasjonen etter 55 timer ved å følge fremgangsmåten steg for steg.

Fremgangsmåte (algoritme)
StegHandlingResultat
1Start: C = 200200
2Gjenta 5 ganger: C = 0,8 · C
3Etter 5 gjentakelser≈65,5
Løsning:
  1. Startverdien er C0=200C_0 = 200, og hver time beholdes 80 %80\ \% (siden 20 %20\ \% brytes ned), så den rekursive formelen er Cn=0,8Cn1C_n = 0{,}8 \cdot C_{n-1}
  2. følg fremgangsmåten steg for steg: C1=0,8200=160C_1 = 0{,}8 \cdot 200 = 160
  3. C2=0,8160=128C_2 = 0{,}8 \cdot 160 = 128
  4. C3=0,8128=102,4C_3 = 0{,}8 \cdot 128 = 102{,}4
  5. C4=0,8102,4=81,92C_4 = 0{,}8 \cdot 102{,}4 = 81{,}92
  6. C5=0,881,92=65,536C_5 = 0{,}8 \cdot 81{,}92 = 65{,}536. Etter 55 timer er konsentrasjonen 65,5\approx 65{,}5 mg/L.
Alternativ forklaring/metode: Finn den eksplisitte formelen i stedet for å gjenta steget

Alternativ metode – innenfor pensum, men ikke hovedmetoden her

Regne om til en eksplisitt formel

Siden konsentrasjonen multipliseres med samme faktor hver time, kan den rekursive sammenhengen skrives om til en eksplisitt (geometrisk) formel: Cn=2000,8nC_n = 200 \cdot 0{,}8^n. Sett direkte inn n=5n = 5: C5=2000,852000,32865,5C_5 = 200 \cdot 0{,}8^5 \approx 200 \cdot 0{,}328 \approx 65{,}5 – samme svar, men uten å måtte gjenta steget fem ganger. Eksplisitt formel er raskere for ETT enkelt ledd langt unna starten, mens den rekursive versjonen er mer naturlig å PROGRAMMERE som en løkke, og viser hele utviklingen underveis.

Rekursiv vs. eksplisitt
MetodeC₅
Rekursiv (5 gjentakelser)65,536
Eksplisitt (200 · 0,8⁵)≈65,5 – samme svar

Oppgaver

Prøv minst én oppgave på hvert nivå.

Lett(3)

L-21Hva trenger en rekursiv formel i tillegg til selve regelen?

Vis fasit
Rekursiv formel
KravBetydning
Rekursiv formelTrenger en startverdi
  1. Uten et utgangspunkt kan ingen ledd regnes ut
  2. en startverdi er nødvendig

L-22En rekursiv formel er an=an1+5a_n = a_{n-1} + 5, med a0=10a_0 = 10. Hva er a1a_1?

Vis fasit
Finn a1
a0Regela1
10+515
  1. a0=10
  2. a1 = 10 + 5 = 15

L-23Hva kalles en formel som gir ana_n direkte fra nn, uten å bruke forrige ledd?

Vis fasit
Type formel
TypeKjennetegn
EksplisittGir aₙ direkte fra n
  1. En slik formel uttrykker a_n direkte via n, uten an1a_{n-1}
  2. en eksplisitt formel
Middels(3)

M-21En rekursiv formel er an=0,9an1a_n = 0,9 \cdot a_{n-1}, med a0=500a_0 = 500. Finn a1a_1, a2a_2 og a3a_3.

Vis fasit
Finn de neste leddene
LeddVerdi
a0500
a1450
a2405
a3364,5
  1. a0=500
  2. a1=0,9 gange 500=450
  3. a2=0,9 gange 450=405
  4. a3=0,9 gange 405=364,5

M-22En radioaktiv kilde mister 10 %10\ \% av massen sin hvert år, og starter på 500500 g. Hva er den rekursive formelen?

Vis fasit
Sett opp den rekursive formelen
DelVerdi
Beholder90 %
Startverdi M₀500 g
  1. Start 500, mister 10% hvert år (beholder 90%)
  2. Mₙ = 0,9 · Mₙ₋₁, M₀ = 500

M-23Bruk formelen fra forrige oppgave til å finne massen etter 33 år.

Vis fasit
Finn massen etter 3 år
ÅrMasse
0500
1450
2405
3364,5 g
  1. Bruker rekursjonen 3 ganger, fra M0 til M3
  2. M0=500
  3. M1=450
  4. M2=405
  5. M3=364,5 g
Vanskelig(3)

V-21En dyrebestand følger Bn=1,02Bn1+50B_n = 1,02 \cdot B_{n-1} + 50, med B0=1 000B_0 = 1\ 000 (2 % vekst pluss et fast tilskudd fra innvandring hvert år). Finn B1B_1 og B2B_2.

Vis fasit
Finn B1 og B2
nBn
01 000
11 070
21 141,4
  1. B0=1 000
  2. B1 = 1,02 gange 1 000 + 50 = 1 070
  3. B2 = 1,02 gange 1 070 + 50 ≈ 1 141,4

V-22Fortsett rekken fra forrige oppgave til B5B_5.

Vis fasit
Fortsett til B5
nBn
21 141,4
31 214,2
41 288,5
51 364,3
  1. Fortsetter fram til ledd 5, altså B5
  2. B2≈1 141,4
  3. B3≈1 214,2
  4. B4≈1 288,5
  5. B5 ≈ 1 364,3

V-23Hvorfor er en bestandsmodell som Bn=1,02Bn1+50B_n = 1,02 \cdot B_{n-1} + 50 HVERKEN en ren aritmetisk ELLER en ren geometrisk rekke?

Vis fasit
Hvorfor verken ren aritmetisk eller geometrisk
TrekkType
1,02 · (multiplikasjon)Geometrisk
+50 (addisjon)Aritmetisk – kombinasjon av begge
  1. Formelen har BÅDE en multiplikasjon (1,02·) OG en addisjon (+50)
  2. kombinasjonen gjør den til en blandet, ikke ren, rekketype