Решение нелинейных уравнений методом Ньютона - Pascal (6689)
Формулировка задачи:
решить методом касательных(метод ньютона). на промежутке (1;3)
Решение задачи: «Решение нелинейных уравнений методом Ньютона»
textual
Листинг программы
uses crt; var a,b,E,x1: real; i: integer; t: boolean; c: array [0..300] of real; function f(x: real): real; begin result:=2*sqr(ln(x))+6*ln(x)-5; end; function f1(x: real): real; begin result:=(4*ln(x)+6)/x; end; function f2(x: real): real; begin result:=(4-4*ln(x)+6)/sqr(x); end; begin clrscr; write('a/b/e: '); {интервал и точность} readln(a,b,e); c[0]:=a; t:=true; i:=0; x1:=f1(c[i]); while t=true do begin c[i+1]:=c[i]-f(c[i])/f1(c[i]); if abs(f(c[i+1]))>E then begin inc(i); x1:=f2(c[i]); continue; end else begin writeln('C=',c[i+1]:4:2); t:=false; break; end; end; writeln('Iteratsiy: ',i); readln; end.
Объяснение кода листинга программы
- Создаются три функции: f, f1 и f2. Они все принимают один аргумент типа real и возвращают значение типа real.
- В основной части программы производится инициализация переменных и считывание значений a, b и e с помощью функции readln.
- Переменная c инициализируется массивом размером 300, где каждый элемент имеет тип real.
- Переменная t инициализируется значением true.
- Переменная i инициализируется значением 0.
- Вычисляется значение x1 с помощью функции f1(c[i]).
- Запускается цикл while, который выполняется до тех пор, пока значение t равно true.
- Внутри цикла происходит вычисление следующего шага приближенного решения уравнения по формуле x_next = x_current - (f(x_current) / f1(x_current))
- Если абсолютное значение f(x_next) больше заданной ошибки E, то значение i увеличивается и вычисляется следующее приближенное значение x_next с помощью функции f2(c[i]).
- Если значение f(x_next) меньше или равно ошибке E, то выводится значение x_next и цикл прерывается.
- После окончания цикла выводится количество итераций.
- Выводится сообщение о том, что точность достигнута.
- Выводится значение x1.
- Выводится сообщение об окончании работы программы.
- Запускается функция readln для выхода из программы.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д