22.10.2013 Views

Rešene naloge iz numerične matematike

Rešene naloge iz numerične matematike

Rešene naloge iz numerične matematike

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

17. Napišite funkcijo horner(a,x), ki po Hornerjevem algoritmu <strong>iz</strong>računa<br />

vrednost polinoma p(x) = n i=0 aix i v dani točki x. Pri tem je vektor<br />

a = (a0, a1, . . . , an) vektor koeficientov polinoma.<br />

Hornerjev algoritem:<br />

bn = an<br />

i = n − 1, n − 2, . . . , 0<br />

bi = xbi+1 + ai<br />

Dobljeni b0 je enak vrednosti polinoma p v točki x.<br />

Rešitev.<br />

% horner.m<br />

function y = horner(a,x)<br />

b = a(end);<br />

n = length(a);<br />

for i = n-1:-1:1<br />

b = x*b + a(i);<br />

end<br />

y = b;<br />

end<br />

% Naloga17.m<br />

% pre<strong>iz</strong>kusimo delovanje funkcije horner<br />

clear all<br />

horner([1,5,3],2)<br />

1 + 5*2 + 3*2^2<br />

18. Napišite funkcijo dpoly(a), ki vrne vektor s koeficienti odvoda polinoma,<br />

podanega z vektorjem koeficientov a.<br />

Rešitev.<br />

% dpoly.m<br />

function v = dpoly(a)<br />

n = length(a);<br />

v = [1:n-1].*a(2:end);<br />

end<br />

% Naloga18.m<br />

% pre<strong>iz</strong>kusimo delovanje funkcije dpoly<br />

clear all<br />

dpoly([1,3,5])<br />

22

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!