(*˜1
PROGRAM biseccion; (* Victor Manuel Iniestra Alvarez *)
(* An lisis Num‚rico I *)
VAR (* Algoritmo de Bisecci¢n *)
a,b,tol,p : Real;
i,NumIte : Word;
FUNCTION f(x:Real):Real;
BEGIN
f:=x-cos(x) (* Definir la Funci¢n *)
END;
PROCEDURE PideDatos(VAR x,y,z:Real;VAR n:Word);
BEGIN
WriteLn;
REPEAT
Write('Dame el l¡mite inferior: ');
ReadLn(x);
Write('Dame el l¡mite superior: ');
ReadLn(y)
UNTIL y>x;
REPEAT
Write('Dame la tolerancia: ');
ReadLn(z);
UNTIL z<1;
Write('Dame el n£mero de iteraciones: ');
ReadLn(n);
WriteLn
END;
PROCEDURE Busca(tol:Real;Numite:Word;VAR a,b:Real);
VAR
encontrada:Boolean;
BEGIN
encontrada:=False;
i:=1;
WHILE (i<=NumIte)AND(NOT encontrada) DO
BEGIN
p:=(a+b)/2;
IF (Abs(a-b)<=Tol)OR(f(p)=0) THEN
BEGIN
WriteLn('La ra¡z es ',p:12:12);
encontrada:=True
END;
IF f(a)*f(p)<0 THEN
b:=p
ELSE
a:=p;
i:=i+1
END;
IF NOT encontrada THEN
WriteLn('El m‚todo fracas¢')
END;
BEGIN
PideDatos(a,b,tol,NumIte);
IF f(a)*f(b)<0 THEN
Busca(tol,NumIte,a,b);
ReadLn
END.
               (
geocities.com/v.iniestra/apuntes)                   (
geocities.com/v.iniestra)