PROGRAM BISECT(INPUT,OUTPUT); CONST EPS =1E-14; VAR X,Y:REAL; FUNCTION ZERO(FUNCTION F:REAL;A,B:REAL):REAL; VAR X,Z:REAL;S:BOOLEAN; BEGIN S:=F(A)<0; REPEAT X:=(A+B)/2.0; Z:=F(X); IF (Z<0)=S THEN A:=X ELSE B:=X UNTIL ABS(A-B)