% Tund nr. 5, ülesanne 1
% võrrand x^3-8x+2=0

% 1) määrame alglähendi(d) - jooniselt
f=@(x) x^3-8*x+2;
fplot(f)
yline(0)
grid on
% alglähenditeks võime võtta -3, 0.2 ja 2.7
% lahendame hariliku iteratsioonimeetodiga
% 2) uurime koondumise tingimust |g'(x)|<1
x=-3;
gtuletis=3/8*x^2
abs(gtuletis) % 3.3750 > 1, ei sobi
x=0.2;
gtuletis=3/8*x^2
abs(gtuletis) % sobib, kuna 0.0150<1
x=2.7;
gtuletis=3/8*x^2
abs(gtuletis) % ei sobi, kuna 2.7338>1

% 3) leiame alglähendile 0.2 vastava lahendi
x0=0.2;
x1=1/8*(x0^3+2)
f(x0)
f(x1)
x2=1/8*(x1^3+2)
f(x2)
% ....

x=0.2;
i=0;
while abs(f(x))>10^(-5)
  x=1/8*(x^3+2);
  i=i+1;
end
lahend2=x
sammud2=i

% 4) valime uue g(x)-i, uurime koondumise tingimust
x=-3;
uusgtuletis=8/3*(8*x-2)^(-2/3);
abs(uusgtuletis) % sobib
x=2.7;
uusgtuletis=8/3*(8*x-2)^(-2/3);
abs(uusgtuletis) % sobib

% teine variant
uusgtuletis=@(x) 8/3*(8*x-2)^(-2/3);
abs(uusgtuletis(-3)) % sobib
abs(uusgtuletis(2.7)) % sobib

% 5) leiame alglähenditele -3 ja 2.7 vastavad lahendid
x=-3;
i=0;
while abs(f(x))>10^(-5)
  x=nthroot(8*x-2,3);  % x=g(x)
  i=i+1;
end
lahend1=x
sammud1=i

x=2.7;
i=0;
while abs(f(x))>10^(-5)
  x=nthroot(8*x-2,3);  % x=g(x)
  i=i+1;
end
lahend3=x
sammud3=i
