Program NewtRaps; (* Victor Manuel Iniestra Alvarez *)
(* An lisis Num‚rico Grupo E *)
VAR (* 30 Agosto 1993 Newton-Raphson *)
tole:extended; (* Usa la recursi¢n para calcular *)
iteraciones:Word; (* f(x)=0 con f'(x)=0 *)
raiz:extended;
Function f(x:extended):extended;
BEGIN
f:=(2*x*x*x+x-1)/(sqrt(x*x*x*x+sqr(x)-2*x+1))
END;
Function df(x:extended):extended;
BEGIN
df:=(2*x*x*x*x*x*x+3*x*x*x*x-8*x*x*x+6*x*x+3*x)/exp(3/2*ln(x*x*x*x+x*x-2*x+1))
END;
Procedure PideDatos(VAR tol,x:extended;VAR ite:Word);
BEGIN
WriteLn;
ite:=0;
REPEAT
Write('Dame el n£mero de iteraciones: ');
ReadLn(ite);
UNTIL (ite>0);
REPEAT
Write('Dame la tolerancia : ');
ReadLn(tol);
UNTIL (tol>0)AND(tol<1);
WriteLn('Dame un valor lo m s cercano a la ra¡z que puedas: ');
ReadLn(x);
WriteLn;
END;
Procedure Busca(p0:extended;operaciones:Word);
CONST
d=4;
VAR
p:extended;
BEGIN
IF operaciones>=1 THEN
BEGIN
IF df(p0)<>0 THEN
BEGIN
p:=p0-f(p0)/df(p0);
IF (f(p)=0)OR(Abs((p-p0)/p)0) THEN
BEGIN
WriteLn;
WriteLn('Newton:');
WriteLn;
WriteLn('F(x)=exp(x)+exp(-x*ln(2))+2*cos(x)-6');
WriteLn;
WriteLn('F''(x)=exp(x)-exp(-x*ln(2))*ln(2)-2*sin(x)');
WriteLn;
WriteLn(' iteraci¢n: p0 p |p-p0|/|p|:');
WriteLn;
Busca(raiz,iteraciones)
END
ELSE
WriteLn('Felicidades le atinaste a la ra¡z.');
WriteLn;
WriteLn('Ya acabe.');
ReadLn
END.
               (
geocities.com/v.iniestra/apuntes)                   (
geocities.com/v.iniestra)