Dzięki za odpowiedź
Jeszcze pytanie, czy dobre rozwiązanie (tym razem metodą
Bisekcji):
Równanie
\(\displaystyle{ x^{2}-1=0}\), przedział
\(\displaystyle{ [-1,3; -0,5]}\), granica błędu:
\(\displaystyle{ \bigtriangleup=0,25}\)
Najpierw sprawdzamy czy:
\(\displaystyle{ |b-a| \le \bigtriangleup}\), czyli
\(\displaystyle{ |-0,5 - (-1,3)| = 0,8 < 0,25}\)
Następnie obliczamy:
\(\displaystyle{ x= \frac{a+b}{2}= \frac{-1,3+(-0,5)}{2}=-0,9}\), sprawdzamy czy
\(\displaystyle{ f(x)=0}\) =>
\(\displaystyle{ f(-0,9)=-0,9^2-1=-0,19}\), czyli
\(\displaystyle{ f(x) \neq 0}\)
Teraz posiadamy dwa przedziały:
\(\displaystyle{ [-1,3; -0,9] oraz [-0,9; -0,5]}\)
Nowy przedział, to taki dla którego zachodzi
\(\displaystyle{ f(a)f(b) < 0}\), tak więc liczymy:
\(\displaystyle{ f(-1,3)*f(-0,9)=0,69*(-0,19)=-0,1311 < 0}\) - znaleźliśmy nowy przedział
\(\displaystyle{ f(-0,9)*f(-0,5)=-0,19*(-0,75)=0,1425 > 0}\)
Powtarzamy kroki od początku, z nowym przedziałem
\(\displaystyle{ [-1,3; -0,9]}\):
\(\displaystyle{ |-0,9 - -(1,3)|=0,4 > \bigtriangleup 0,25}\)
Obliczamy:
\(\displaystyle{ x= \frac{-1,3+(-0,9)}{2}=-1,1}\)
\(\displaystyle{ f(-1,1)=(-1,1)^2-1=0,21}\), czyli
\(\displaystyle{ f(x) \neq 0}\)
Mamy teraz 2 nowe przedziały:
\(\displaystyle{ [-1,3; -1,1] oraz [-1,1; -0,9]}\)
\(\displaystyle{ f(-1,3)*f(-1,1)=0,69 * 0,21 = 0,1449 > 0}\)
\(\displaystyle{ f(-1,1)*f(-0,9)=0,21*(-0,19)=-0,0399 < 0}\) - znaleziono w przedziale
\(\displaystyle{ [-1,1; -0,9]}\)
Powtarzamy kroki od początku:
\(\displaystyle{ |-0,9-(-1,1)|=0,2< \bigtriangleup 0,25}\)
\(\displaystyle{ x= \frac{-1,1+(-0,9)}{2}=-1}\)
Rozwiązaniem równania jest -1.
Pytanie, w czym najlepiej napisać programy pod te dwie metody (Bisekcji oraz Newton'a), znam
trochę C++, Pascala (podstawy podstaw). Czy może zaryzykować jakieś tutoriale i spróbować to odpalić w Matlabie / Octave?