next up previous
Next: while-Loopar Up: Studio 3 Previous: for-Loopar

Geometrisk summa

En geometrisk summa är en summa på formen

$\displaystyle s = ap + ap˛ + apł + \ldots + ap^k,$    

för några värden på $ a$, $ p$ och $ k$. Värdet på den här summan ges av den klassiska formeln

$\displaystyle s = a + ap + ap^2 + ap^3 + \ldots + ap^k = a   \frac{1-p^{k+1}}{1-p}.$    

Ett exempel på en sådan summa är

$\displaystyle s = 1 + 2 + 2^2 + \ldots + 2^{15}.$    

där $ a=1$, $ p=2$ och $ k=15$. Vi kan använda en for-loop för att beräkna denna summa. Koden kan t.ex. se ut enligt följande
s = 0;
for i = 0:15
  s = s + 2^i
end
Summan $ s$ börjas alltså på noll och sedan adderas successivt talen $ 2^0$, $ 2^1$, $ 2^2$, $ \ldots$, $ 2^{15}$ till $ s$ allteftersom loopindexen $ i=0,1,2,\ldots, 15$ löps igenom.

Observera att vi har skapat indexvektorn i med bara ett kolon. Det är det mittersta talet som tagits bort. Detta tal ges då automatiskt värdet $ 1$.

Övning: Här är ett program, som beräknar geometriska summor

a = 1;
p = 2;
k = 15;
s = 0;
for i = 0:k
  s = s + a*p^i
end
Ändra $ a$, $ p$ och $ k$ så att du kan beräkna den geometriska summan

$\displaystyle 1+\frac{1}{2}+\frac{1}{2^2}+\frac{1}{2^3}+\ldots+\frac{1}{2^{12}}.$    

Kontrollera att svaret stämmer genom att beräkna $ \displaystyle
\frac{1-0.5^{13}}{1-0.5}$.


next up previous
Next: while-Loopar Up: Studio 3 Previous: for-Loopar
Fredrik Bengzon 2004-08-24