Rekker
1.1.20
På teorisiden om rekker har vi lagd et program som regner ut summen av de 20 første leddene i rekka ved hjelp av den eksplisitte formelen for
a) Lag et program som regner ut det samme ved hjelp av en rekursiv formel.
Løsning
Rekka vil være gitt ved den rekursive formelen
Vi lager en variabel for dagslønna og en variabel for den samlede lønna. Her må vi kjøre løkka 19 ganger, siden vi starter med lønna på dag 1.
python
1dagslonn = 1 #lønn per dag
2samletlonn = 1 #variabel for samlet lønn
3dager = 20 #antall dager
4
5
6for n in range(dager-1):
7 dagslonn = dagslonn*2
8 samletlonn = samletlonn + dagslonn
9
10print(f"Samlet lønn blir {samletlonn} kr.")
b) Finn
Løsning
Her må vi bruke den eksplisitte formelen.
![Skjermutklipp fra CAS. Det står Sum parentes 2 opphøyd i parentes n minus 1 parentes slutt komma n komma 1 komma 20 parentes slutt. Svaret er gitt som 1048575.](https://api.ndla.no/image-api/raw/pAbwHYgE.png?width=1024)
1.1.21
Leddene i ei uendelig rekke er gitt ved formelen
a) Finn de tre første leddene for hånd.
Løsning
b) Lag et program som skriver ut de 20 første leddene.
Løsning
python
1a_n = 0
2antall = 1
3Leddene = []
4
5for n in range(1,21):
6 a_n = 1/(1+n)**2
7 Leddene.append(a_n)
8 antall = antall+1
9
10print(Leddene)
c) Utvid programmet slik at det også skriver ut de 20 første summene, det vil si
Løsning
python
1a_n = 0
2Sum = 0
3antall = 1
4Leddene = []
5Summene = []
6
7for n in range(1,21):
8 a_n = 1/(1+n)**2
9 Sum = Sum + a_n
10 Leddene.append(a_n)
11 Summene.append(Sum)
12 antall = antall+1
13
14print(Leddene)
15print(Summene)
Legg merke til at disse programmene bare er helt grunnleggende, og at utskriftene ikke er lette å tyde.
Her kommer en versjon med overskrifter og litt færre desimaler. Kanskje kan du noen andre triks for å få det til å se bedre ut?
Python
1a_n = 0
2Sum = 0
3antall = 1
4Leddene = ["a_n"]
5Summene = ["S_n"]
6
7for n in range(1,21):
8 a_n = 1/(1+n)**2
9 Sum = Sum + a_n
10 Leddene.append(a_n)
11 Summene.append(Sum)
12 antall = antall+1
13
14
15
16for i in range(0,21):
17 if i == 0:
18 print(f"{Leddene[i]:<6} {Summene[i]:<6}")
19 else:
20 print(f"{Leddene[i]:.4f} {Summene[i]:.4f}")
21
I linje 18 har vi lagt inn en formatering for å få raden med overskrifter til å bli like bred som radene med ledd og summer.
d) Finn summen, både eksakt og avrundet til 10 desimaler, når
Løsning
![Skjermutklipp fra CAS i GeoGebra. Linje 1 finner summen av rekka 1 delt på parentes 1 pluss n parentes slutt opphøyd i 2 fra n er lik 1 til uendelig. Svaret er gitt ved 1 delt på 6 ganger med pi opphøyd i 2 minus 1. Linje 2 runder av svaret til 0,6449340668.](https://api.ndla.no/image-api/raw/4flbwxHb.png?width=1024)
e) Utvid programmet ditt fra c) slik at du får skrevet ut leddene fra
Løsning
python
1a_n = 0
2Sum = 0
3antall = 1
4Leddene = ["a_n"]
5Summene = ["S_n"]
6
7for n in range(1,1001):
8 a_n = 1/(1+n)**2
9 Sum = Sum + a_n
10 Leddene.append(a_n)
11 Summene.append(Sum)
12 antall = antall+1
13
14print("a_290 - a_300")
15
16for i in range(291,301):
17 print(f"{Leddene[i]:.5f} {Summene[i]:.5f}")
18
19print("a_990 - a_1000")
20
21for i in range(991,1001):
22 print(f"{Leddene[i]:.6f} {Summene[i]:.5f}")
Resultatet av utskriften blir slik (med 5 og 6 desimaler):
Vi ser at leddene blir mindre og mindre, og at summen nærmer seg sakte, men sikkert den summen vi fant i oppgave d).
f) Utfordring: Kan du lage et program som finner ut hvor mange ledd du må ha for at summen skal være lik den summen du fikk i oppgave d) med en nøyaktighet på 7 desimaler?
Løsning
Hvis vi skal ha en nøyaktighet på 7 desimaler, altså en sum på 0,6449340, må vi finne ut når summen passerer 0,64493405 (fordi vi da måtte ha rundet opp til 0,6449341).
Programmet kan se slik ut:
python
1a_n = 0
2Sum = 0
3antall = 1
4
5
6while Sum < 0.64493405:
7 a_n = 1/(1+antall)**2
8 Sum = Sum + a_n
9 antall = antall+1
10
11print(f"Vi trenger {antall-1} ledd for å få summen med 7 desimalers nøyaktighet.")
Tok programmet langt tid å kjøre? Ikke så rart, kanskje, siden vi trenger hele 59 128 516 ledd i rekka for å komme til denne summen.
Kanskje du klarer å finne et mer effektivt program?
1.1.22
Leddene i ei uendelig rekke er gitt ved formelen
a) Skriv opp de fem første leddene i rekka.
Løsning
b) Finn
Løsning
Vi bruker GeoGebra og runder av:
![Skjermutklipp fra CAS i GeoGebra. Linje 1 finner summen av rekka 1 delt på n opphøyd i 2 fra 1 til 5, svaret er 1,4636111111. Linje 2 finner summen av den samme rekka fra 1 til 50. Svaret er 1,6251327336.](https://api.ndla.no/image-api/raw/35ByRGvS.png?width=1024)
c) Finn den eksakte summen av rekka når
Løsning
Vi bruker GeoGebra:
![Skjermutklipp fra CAS i GeoGebra, ei linje. Linje 3 finner summen av rekka 1 delt på n opphøyd i 2 fra 1 til uendelig. Svaret er gitt som en seksdel pi opphøyd i 2.](https://api.ndla.no/image-api/raw/pE2G2ygd.png?width=1024)
1.1.23
Leddene i ei uendelig rekke er gitt ved formelen
a) Skriv opp de fem første leddene i rekka.
Løsning
b) Finn
Løsning
Vi bruker GeoGebra:
![Skjermutklipp fra CAS i GeoGebra. Linje 1 finner summen av rekka 1 delt på n fra 1 til 50, svaret er 4,4992053383. Linje 2 finner summen av den samme rekka fra 1 til 100, svaret er 5,1873775176.](https://api.ndla.no/image-api/raw/jfQlke9w.png?width=1024)
c) Finn summen av rekka når
Løsning
Vi bruker GeoGebra:
![Skjermutklipp fra CAS i GeoGebra, ei linje. Linje 3 finner summen av rekka 1 delt på n fra 1 til uendelig. Svaret er uendelig.](https://api.ndla.no/image-api/raw/kHXwrhMK.png?width=1024)
d) Sammenlign resultatet i c) med resultatet i 1.1.22 c). Beskriv hva som er forskjellen mellom disse to.
Løsning
I 1.1.22 c) var svaret et tall, mens i denne oppgaven er svaret uendelig. Det betyr at summen av rekka som er gitt ved
Dette betyr at rekka i 1.1.22 konvergerer, mens rekka i 1.1.23 ikke gjør det. Dette vil du lære mer om når du kommer til artikkelen "Konvergens og divergens i uendelige geometriske rekker".