Neka je u M-fajlu zadat vektor .
X = [1 4 2 -5 -2 9];Napisati M-fajl sa funkcijom koja formira polinom kome su nule pozitivne vrednosti vektora i računa vrednost tog polinoma u tački .
x
function [p, y] = nule(x)vektor;% I način - for petljaY = [];for i = 1:length(X) if X(i) > 0 Y = [Y, X(i)]; endend% II način - korišćenje ugrađene funkcije find()% Y = X(find(X > 0));% funkcija poly() vraća polinom čije su nule elementi vektora koji prosleđujemo kao argumentp = poly(Y);y = polyval(p, x);Napisati M-fajl sa funkcijom koja za uneti argument računa vrednost izvoda u tački polinoma dobijenog pozivom funkcijskog fajla
x
function i = izvod(x)% Svejedno je koju vrednost x ćemo proslediti kao argument pri pozivu funkcije % [p, y]=nule(x) jer nam je bitan samo polinom koji se formira. % Kada funkcijskom fajlu koji vraća više vrednosti kao rezultat dodelimo jednu promenljivu, % dobićemo prvu vrednost rezultata. U našem slučaju, potreban nam je samo polinom, ne i %vrednost polinoma u tački x=1p = nule(1);% k=polyder(p) vraća polinom k koji predstavlja prvi izvod polinoma p% dok k=polyder(p,q) vraća polinom k koji predstavlja prvi izvod polinoma p*q.i = polyval(polyder(p), x);Nacrtati grafik polinoma na intervalu koristeci ekvidistantnu mrežu sa tačaka
x
% polinom se predstavlja vektorom njegovih koeficijenata% x^4 + x^2 -1 = 1*x^4 + 0*x^3 + 1*x^2 + 0*x^1 - 1*x^0p = [1, 0, 1, 0, -1];% ekvidistantna mreža od 50 tačaka na [-2, 2]x = linspace(-2, 2, 50);% vrednost polinoma u čvorovima mrežey = polyval(p, x); plot(x, y);% izjednačavanje osaaxis equaltitle('Grafik polinoma x^4+x^2-1');xlabel('x-osa');ylabel('y-osa');