Составить программу для решения уравнения f(x)=0 на отрезке [A,B} с точностью Е методом деления отрезка пополам. Метод состоит в последовательном приближении к корню за счёт уменьшения отрезка, на котором находится корень. Каждое новое приближение X находится как середина текущего отрезка. Концы текущего отрезка выбираются из условия противоположности знака f(x) на его концах. Вычисление корня заканчивается, когда длина отрезка станет меньше Е.- Pascal(Паскаль)

Для проверки программы задать A= 0 B=2 E=10-4

F(x)= Ln(1+x)-0,95sinx + 6/7 — x

uses Crt;
function f(x:real):real;
begin
   f:=ln(1+x)-0.95*sin(x)+6/7-x;
end;
 
var x,eps,a,b,c:real;
begin
clrScr;
writeln('Введите значения a и b');
readln(a,b);
writeLn('Введите точность eps');
readln(eps);
repeat
c:=(a+b)/2;
if(f(a)*f(c))<0 then b:=c
else a:=c;
until (b-a)<=eps;
x:=(a+b)/2;
writeLn('Корень x=',x:0:7);
readln
end.

Leave a Comment

+ 28 = 33