Function f(x: real): real; begin f := (x - 3) / (sqr(x) + 2) end;
var a, b, x, fa, fb, fx, eps: real;
begin Write('Введите через пробел границы интервала [a;b] и точность:'); Readln(a, b, eps); fa := f(a); if abs(fa) <= eps then Writeln('x=', a, ', y=', fa) else begin fb := f(b); if abs(fb) <= eps then Writeln('x=', b, ', y=', fb) else if fa * fb > 0 then Writeln('На указанном интервале корней нет') else repeat x := (a + b) / 2; fx := f(x); if abs(fx) <= eps then Writeln('x=', x, ', y=', fx) else if fa * fx > 0 then a := x else b := x; until abs(fx) <= eps end end.
Результат выполнения программы:
Введите через пробел границы интервала [a;b] и точность:-1 4 1e-4 x=2.9990234375, y=-8.88257162245635E-05
0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota
Оформи подписку