Пишет Вещественное деление на 0, сама программа выглядит так:
uses Crt;
var x,a,b,e: real;
function f1(d: real): real;
begin
f1:=(x-2)*(x-2)*2*x-1;
end;
function f2(d:real): real;
begin
f2:=6*x*x-16*x+8;
end;
begin
Clrscr;
a:=0.4;
b:=2;
e:=0.001;
if f1(a)*f2(a)>0 then x:=a
else x:=b;
while abs(f1(x))>e do
begin
x:=x-f1(x)/f2(x);
end;
Writeln ('x=',x,' f(x)=',f1(x));
Readln
end.