Sofies lån og nedbetalingsprogram

Sofies lån og nedbetalingsprogram

Sofie har tatt opp et forbrukslån på 100 000 kroner. Rentefoten er 2 % per måned. Hun skal betale ned på lånet hver måned, og terminbeløpet skal være 6378 kroner.

Sofie vil ha en nedbetalingsplan for lånet og har laget programmet nedenfor.

# Definerer variabler
restlån = 100000
terminbeløp = 6378
rentefot = 2

# Overskrifter
print("Måned        Terminbeløp    Renter         Avdrag         Restlån")

for måned in range(1, 5):

    renter = 0
    avdrag = 0
    restlån = 0

    # Skriver ut i fem kolonner ved å bruke tabulatorer sep = "\t\t"
    # Runder av beløpene til to desimaler ved å bruke round
    print(måned,
        round(terminbeløp, 2),
        round(renter, 2),
        round(avdrag, 2),
        round(restlån, 2), sep = "\t\t")

Nedenfor ser du resultatet hun får når hun kjører programmet.

MånedTerminbeløpRenterAvdragRestlån
16378000
26378000
36378000
46378000

Du skal hjelpe Sofie med å endre programmet. Sett inn formler i stedet for tallet null i linje 12, 13 og 14, og gjør endringer slik at hele den riktige nedbetalingsplanen skrives ut.

Hvor mange måneder vil det ta før lånet er betalt ned?

Fasit

Se løsningsforslag for rettet program.

2020 måneder

LøsningsforslagKI-generert

Problemet med Sofies program er at linje 12, 13 og 14 setter renter, avdrag og restlån til 0 i stedet for å beregne dem. Vi må også endre løkken slik at den kjører til lånet er nedbetalt.

De tre linjene skal erstattes med:

  • Linje 12: renter = restlån * rentefot / 100
  • Linje 13: avdrag = terminbeløp - renter
  • Linje 14: restlån = restlån - avdrag

I tillegg endrer vi løkken fra for måned in range(1, 5) til en while-løkke som kjører så lenge restlånet er positivt. Det rettede programmet blir:

# Definerer variabler
restlån = 100000
terminbeløp = 6378
rentefot = 2

# Overskrifter
print("Måned        Terminbeløp    Renter         Avdrag         Restlån")

måned = 0
while restlån > 0:
    måned = måned + 1

    renter = restlån * rentefot / 100
    avdrag = terminbeløp - renter
    restlån = restlån - avdrag

    # Skriver ut i fem kolonner ved å bruke tabulatorer sep = "\t\t"
    # Runder av beløpene til to desimaler ved å bruke round
    print(måned,
        round(terminbeløp, 2),
        round(renter, 2),
        round(avdrag, 2),
        round(restlån, 2), sep = "\t\t")

Når vi kjører det rettede programmet, får vi denne nedbetalingsplanen:

MånedTerminbeløpRenterAvdragRestlån
16 378,002 000,004 378,0095 622,00
26 378,001 912,444 465,5691 156,44
36 378,001 823,134 554,8786 601,57
46 378,001 732,034 645,9781 955,60
56 378,001 639,114 738,8977 216,71
66 378,001 544,334 833,6772 383,05
76 378,001 447,664 930,3467 452,71
86 378,001 349,055 028,9562 423,76
96 378,001 248,485 129,5257 294,24
106 378,001 145,885 232,1252 062,12
116 378,001 041,245 336,7646 725,36
126 378,00934,515 443,4941 281,87
136 378,00825,645 552,3635 729,51
146 378,00714,595 663,4130 066,10
156 378,00601,325 776,6824 289,42
166 378,00485,795 892,2118 397,21
176 378,00367,946 010,0612 387,15
186 378,00247,746 130,266 256,90
196 378,00125,146 252,864,03
204,120,084,030,00

Det tar 20 ma˚neder\underline{\underline{20 \text{ måneder}}} før lånet er betalt ned.