Du har nettopp laget en funksjon som estimerer kvadratroten til et tall, ved hjelp av 20 iterasjoner av Newtons metode. Du ønsker nå å vite hvordan utviklingen av estimatene er i hver iterasjon. Utvid funksjonen til å produsere utskrift som det følgende i hver iterasjon:

Utdelt kode

kvadratrot.m
function retur = kvadratrot(tall)
    x = 1;
    for i = 1:20
       x = x + (tall - x^2)/(2*x);
    end
    retur = x;
end

Videoforklaring (7:25)

Løsningsforslag

kvadratrot.m
function retur = kvadratrot(tall)
    x = 1;
    for i = 1:20
       ny_x = x + (tall - x^2)/(2*x);
       fprintf('Iterasjon #%d: x_%d = %.10f, x_%d = %.10f\n', i, i-1, x, i, ny_x);
       x = ny_x;
    end
    retur = x;
end
  • No labels