Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

2 курс / Численные методы / Задание 5 / Метод парабол

.pas
Скачиваний:
21
Добавлен:
29.03.2016
Размер:
1.01 Кб
Скачать
function f(x:real):real; {Исходная функция}
begin
f:=(x-3)*(x-3)-1+sin(x);
end;

function f1(x:real):real; {Первая производная функции}
begin
f1:=2*(x-3)+cos(x);
end;

function f2(x:real):real; {Вторая производная функции}
begin
f2:=2-sin(x);
end;

var a,b,x,e,en:real;
i:integer;
begin
writeln ('Нахождение минимума функции методом парабол');
writeln ('Уравнение f:=(x-3)^2-1+sin(x), пределы a=0, b=5, точность e=0,001');
writeln ('Введите левую границу интервала:');
readln (a);
writeln ('Введите правую границу интервала:');
readln (b);
writeln ('Введите требуемую точность решения:');
readln (e);
writeln ('Решение:');
writeln ('Номер шага Значение X');
en:=abs(a-b);
x:=b;
i:=1;
while ((en)>e) do
begin {Пока не достигнута точность}
x:=x-f1(x)/f2(x); {выполнить шаг метода}
writeln (i:10,x:20:14); {вывести значение X с шага}
en:=abs(x-b); {Новая точность}
b:=x; {Значение границы для следующего шага}
i:=i+1; {Номер шага}
end;
end.
Соседние файлы в папке Задание 5