Ukjent program del 1 S2

Ukjent program del 1 S2

En elev har skrevet følgende kode:

a = 3
d = 4

N = 10
S = 0

for i in range(N):
	S = S + a
	a = a + d

print(S)

Forklar hva eleven ønsker å regne ut.

Hva blir resultatet når programmet kjøres, dersom N settes til 100 i linje 4 ?

Fasit

Summen av 10 første ledd av aritmetisk rekke med a1=3,d=4a_{1}=3, d=4

20100

Løsningsforslag

Det ser ut til at eleven forsøker å regne ut delsummer av en aritmetisk rekke. Helt konkret ser det ut til at eleven forsøker å regne ut summen av de ti første leddene når startverdien er 3 og differansen er 4, altså S10,a1=3,d=4S_{10},\, a_1=3,\, d=4.

Vi kan finne summen av denne aritmetiske rekka med:

s100=a1+a1002100=3+(3+499)2100=4022100=20100s_{100}= \frac{a_{1}+a_{100}}{2}\cdot 100 = \frac{3+(3+4\cdot 99)}{2}\cdot{100}=\frac{402}{2}\cdot {100}=\underline{\underline{20\,100}}