Du starter maks-søket på 0
Handler om: Akkumulator, Søk (lineært)
Når du leter etter det største tallet, er det fristende å skrive `storst = 0` før løkka. Det virker så lenge alle tallene er positive — men er alle negative, blir svaret `0`, et tall som ikke engang finnes i lista. Startverdien må hentes fra dataene selv: `storst = tall[0]`.
Eksempel
Du finner høyeste temperatur i [-8, -3, -11] og får 0 — en temperatur som aldri ble målt.
Slik tenker du riktig om det
Spør: «kan svaret være et tall som ikke står i lista?» Starter du på 0, har du smuglet inn en kandidat utenfra. Første element er alltid en lovlig kandidat.
Slik ser det ut i kode
Slik gikk det galt
storst = 0 # gjettet startverdi
for t in tall:
if t > storst:
storst = t Slik fikser du det
storst = tall[0] # start i dataene
for t in tall[1:]:
if t > storst:
storst = t