%Joonis alglähendite leidmiseks
fplot(@(x)x.^3-6*x.^2+3*atan(x)+3,[-1,7])
grid on
legend()
title('Joonis alglähendite leidmiseks')

%Jooniselt on näha 3 nullkohta, valime need alglähenditeks.
%Meile sobivad -0.5 ja 1 ja 5.6.

%Defineerime võrrandi vasaku poole funktsioonina
f=@(x)x^3-6*x^2+3*atan(x)+3;
%ja selle tuletise
ftuletis=@(x)3*x^2-12*x+3/(1+x^2);

%Lahendame võrrandi Newtoni meetodiga
%kasutame x-i vektorina, alglähend on vektori esimene element
x(1)=-0.5; %alglähend jooniselt
i=1; %vektori elementide arv arv
while abs(f(x(i)))>10^-6
    x(i+1)=x(i)-f(x(i))/ftuletis(x(i)); %Newtoni meetodi eeskiri
    i=i+1; %vektori elementide arv suurenes
end
vastus1=x(i-1)
sammud1=i-1 %tegelik vektori elementide arv=sammude arv
vektorx1=x

%teine lahend
%kasutame x-i vektorina, alglähend on vektori esimene element
x(1)=1; %alglähend jooniselt
i=1; %vektori elementide arv arv
while abs(f(x(i)))>10^-6
    x(i+1)=x(i)-f(x(i))/ftuletis(x(i)); %Newtoni meetodi eeskiri
    i=i+1; %vektori elementide arv suurenes
end
vastus2=x(i-1)
sammud2=i-1 %tegelik vektori elementide arv=sammude arv
vektorx2=x

%kolmas lahend
%kasutame x-i vektorina, alglähend on vektori esimene element
x(1)=5.6; %alglähend jooniselt
i=1; %vektori elementide arv arv
while abs(f(x(i)))>10^-6
    x(i+1)=x(i)-f(x(i))/ftuletis(x(i)); %Newtoni meetodi eeskiri
    i=i+1; %vektori elementide arv suurenes
end
vastus3=x(i-1)
sammud3=i-1 %tegelik vektori elementide arv=sammude arv
vektorx3=x