Programmering av kuler og pinner i figurserie 1T V26

Kristian er kunstner. Han arbeider med et prosjekt der han skal lage en serie med figurer ved å lime kuler på pinner.
Ovenfor ser du de fire første figurene i serien. For å lage figur \(4\) har Kristian brukt \(7\) pinner og \(12\) kuler.
Tenk deg at Kristian skal lage de \(50\) første figurene i denne serien.
Lag et program som beregner og skriver ut hvor mange kuler han vil trenge, og hvor mange pinner han vil trenge.
Kristian trenger \(\underline{\underline{2500 \text{ pinner}}}\) og \(\underline{\underline{41650 \text{ kuler}}}\).
Vi studerer mønsteret fra figur 1 til 4:
| Figur nr. | Pinner | Kuler |
|---|---|---|
| 1 | 1 | 0 |
| 2 | 3 | 2 |
| 3 | 5 | 6 |
| 4 | 7 | 12 |
Pinner: Fra figur til figur kommer det til én vertikal og én horisontal pinne, altså 2 pinner ekstra. Figur 1 har 1 pinne, så antall pinner i figur \(n\) er
Kuler: Figurene danner et rektangulært mønster med \(n\) rader og \(n - 1\) kolonner av kuler. Antall kuler i figur \(n\) er
Vi kan verifisere mot oppgaveteksten: figur 4 har \(2 \cdot 4 - 1 = 7\) pinner og \(4 \cdot 3 = 12\) kuler. ✓
Programmet bruker en løkke fra \(n = 1\) til \(n = 50\) og summerer opp:
# Beregn totalt antall pinner og kuler for de 50 første figurene
# Figur n: pinner = 2n - 1, kuler = n*(n-1)
totalt_pinner = 0
totalt_kuler = 0
for n in range(1, 51):
pinner = 2 * n - 1 # antall pinner i figur n
kuler = n * (n - 1) # antall kuler i figur n
totalt_pinner += pinner
totalt_kuler += kuler
print(f"Totalt antall pinner: {totalt_pinner}")
print(f"Totalt antall kuler: {totalt_kuler}")
Output:
Totalt antall pinner: 2500
Totalt antall kuler: 41650
Kristian trenger 2500 pinner og 41650 kuler til de 50 første figurene.