Está en la página 1de 2

program muller;

uses wincrt;
var a,b,no,p,c,fpn,pn,v1,v2,v3,x,y,x1,x2,x3,dt,dt1:real;
tol,negtol,n,i,m:integer;
s:char;
const log2=301029995;
ln10=2.302585093;
begin
writeln('la ecuacion es:xcos x-2x^2+3x-1');
write('ingreseelnivel detolerancia,tol=');
readln(tol);
writeln( 'ingrese los valores de los intervalos dados ');
write('valor de a, a=');read(x);
write('valor deb,b=');read(y);
writeln;
writeln('ingrese los valores de las aproximaciones de los ceros');
writeln('en el intervalo dado');
writeln('valor de a, a=');read(a);
while a<x do
begin
writeln('el numero debe estar contenido dentro del intervalo');
write('valor de a, a=');read(a);
end;
write('valor deb,b=');read(b);
write('valor dec,c=');read(c);
while C>Y do
begin
writeln('el numero debe estar contenido dentro del intervalo');
write('valor dec,c=');read(c);
END;

negtol:=(-1*tol);
no:=(negtol+(ln(b-a)/ln10))/(log2);
n:=round(no);
writeln;
write('metodo de muller':12);
writeln(' es numero de itelaciones es :' :38,n);
writeln('para la ecuacion xcosx-2x^2+3x-1':58);
writeln('aproximaciones Po=':40,a:0:2,', P1=',b:0:2,', P2=',c:0:2);
writeln('__________________________________________':77);
writeln('N':3,'f(pn)':12,'a':14,'b':16,'c':14,'pn':14);
writeln('__________________________________________':77);
m:=0;
i:=3;
v1:=a*cos(a)-2*a*a+3*a-1;
writeln(m:3,v1:15:8,a:59:8);
m:=m+1;
v2:=b*cos(b)-2*b*b+3*b-1;
writeln(m:3,v2:15:8,b:59:8);
m:=m+1;
v3:=c*cos(c)-2*c*c+3*c-1;
writeln(m:3,v3:15:8,c:59:8);
while i<=(N)do
begin
x1:=((b-c)*(v1-v3)-(a-c)*(v2-v3))/((a-c)*(b-c)*(a-b));
x2:=((a-c)*(a-c)*(v2-v3)-(b-c)*(b-c)*(v1-v3))/((a-c)*(b-c)*(a-b));
x3:=v3;
pn:=c-(2*x3)/(x2+((x2/ABS(x2))*SQRT(x2*x2-4*x1*x3)));
fpn:=pn*cos(pn)-2*pn*pn+3*pn-1;
writeln(i:3,fpn:15:8,x1:15:8,x2:16:8,x3:14:8,pn:14:8);
A:=B;
B:=C;
C:=PN;
V1:=V2;
V2:=V3;
V3:=FPN;
i:=i+1
end;
s:=readkey;
end.

También podría gustarte