Составить программу для вычисления корня нелинейного уравнения по методу касательных х^2-cos(x^2)=6

Составить программу для вычисления корня нелинейного уравнения по методу касательных х^2-cos(x^2)=6
Гость
Ответ(ы) на вопрос:
Гость
Для метода касательных (он же - метод Ньютона) надо задать начальное приближение и получить выражение для производной функции. [latex]f(x)=x^2-\cos(x^2)-6; \\ f'(x)=2x+2x\sin(x^2)=2x(1+\sin(x^2))[/latex] Рекуррентная формула в методе Ньютона имеет следующий вид: [latex]\displaystyle x_{n+1}=x_n- \frac{f(x_n)}{f'(x_n)} [/latex] Для нашей конкретной задачи можно записать: [latex]\displaystyle x_{n+1}=x_n- \frac{x_n^2-\cos{x_n^2}-6}{2x_n(1+\sin{x_n^2})} [/latex] А еще надо задать погрешность решения, которую определим так: [latex]\displaystyle |f(x_{n+1})|\leq \varepsilon [/latex]  function f(x:real):real; begin   f:=sqr(x)-cos(sqr(x))-6 end; function fn1(x:real):real; begin   fn1:=x-(sqr(x)-cos(sqr(x))-6)/(2*x*(1+sin(sqr(x)))) end; var   xn,xn1,y,eps:real; begin   Writeln('Введите начальное приближение для корня: ');   Read(xn);   Writeln('Введите значение погрешности для решения: ');   Read(eps);   xn1:=xn; y:=f(xn);   while abs(y)>eps do     begin xn1:=fn1(xn); y:=f(xn1); xn:=xn1 end;   Writeln('x=',xn1,' f(x)=',y) end. Тестовое решение: Введите начальное приближение для корня: -3 Введите значение погрешности для решения: 0.00001 x=-2.61645602631473 f(x)=1.28691349221555E-06
Не нашли ответ?
Ответить на вопрос
Похожие вопросы