Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
(DAIA)
Asignatura:
Mtodos Numricos
Tarea:
Programas
Alumnos:
Hctor Manuel Ramrez Lpez
Edgar Jess Garca Avendao
Fernando Hernndez Moreno
Profesor:
Jos Luis Jimnez Len
Fecha:
30/11/2012
1
BISECCION-------------------------------------------------------------- (3-4)
SECANTE----------------------------------------------------------------- (5-7)
ELIMINACION DE
GAUSS--------------------------------------------- (8-11)
MATRIZ
INVERSA------------------------------------------------------ (12-14)
MINIMOS
CUADRADOS----------------------------------------------(15-17)
1
const
euler=2.718281828;
var
x1,xu,xm,Xma,fx1,fxm,e,xr:real;
begin
x1:=strtofloat(edit1.text);
xu:=strtofloat(edit2.text);
e:=0;
Xma:=0;
Repeat
xm:=(x1+xu)/2;
e:= ((Xma Xm)/Xm) *100;
fx1:=exp(-x1*Ln(euler))-x1;
fxm:=exp(-xm*Ln(euler))-xm;
xr:=fx1*fxm;
Xma:=Xm;
if xr>0
then
x1:=xm;
else
xu=xm;
until (abs(e)<5);
edit3.text:=floattostr(xm);
end;
Valor de X1
Valor de XU
Xma 0
Repetir
Xm (X1 + Xu)/2
Error ((Xm ant Xm act)/Xm act) *100
Fx1
Fxm
Xr FX1 * FXm
Xma Xm
Si Xr > 5
Entonces
X1 Xm
De lo contrario
Xu Xm
Hasta error<5
Imprimir Xm
INICIO
N, Xi,Xu,f(x)
Si
No
f(xi)*f(x
m)>0
Si
xixm
No
Xm
xuxm
Fin
Var
X1,X2,X3, error :real;
Begin
X1:= StrTofloat(Edit1.Text);
X2:= StrTofloat(Edit2.Text);
Repeat
Fx1:= (Exp(-x1*(Ln(e))))-x1;
Fx2:= (Exp(-x2*(Ln(e))))-x2;
X3:= (xi-((Fx1*(x2-X1)))/(Fx2-Fx1));
Fx3:= (Exp(-x3*(Ln(e))))-x3;
error:= (abs((x2-x3)/x3))*100;
X1:= x2;
X2:= X3;
Until error<5;
Edit3.text:= FloatToStr(x3);
End;
Coeficientes de la ecuacin
Valor de X1
Valor de X2
Repetir
f(x1)
f(x2)
X3 (x1-((Fx1*(x2-X1)))/(Fx2-Fx1));
F(X3)
Error ((X2 X3)/X3)*100)
X1 X2
X2 X3
Hasta Error < 5
Imprimir X3
INICIO
N, Xi, Xi-, f(x)
Xi= Xi+1
Xi-1= Xi+1
N=
No
10
Si
Xi-1
Fin
Grado de la ecuacin N
Coeficientes de la ecuacin
0<=i<=n
Tolerancia tol
Valor de X1
Valor de X2
Y1 f(x1)
Y2 f(x2)
Contador 0
Repetir
X3 X1 + (Y1*(X2-X1)/(Y1+Y2))
Y3 F(X3)
Si (Y3*Y2) >0
Entonces
X1 X3
Y1 Y3
De lo contrario
X2 X3
Y2 Y3
Contador contador + 1
Hasta (X2-X1) <= tol p (contador>100)
INICIO
[A], NE
I=1
J=I+1
K=I+1
a[j,k] a [j,k]-[a[I,k]/a[I,i])*a[j,k]
K=I + 1
J= J + 1
K= K + 1
K NE
+1
I= I + 1
J= I + 1
J NE
K= I + 1
I NE
Si
x= aNE + 1/aNE,NE
I= NE - 1
Suma= 0
K= I + 1
K NE
K= I + 1
Si
K= k + 1
I= J + 1
Si
I1
No
I=1
XI= 1/a[I,I]*(aINE+1-suma)
I NE
Si
I= I +
1
No
X1
FIN
1
Numero de ecuaciones
n
Matriz aumentada
1<= i<=n i<=k<=n+1
Hacer I de 1 hasta NE-1
Hacer J de I+1 hasta NE
Hacer K de I+1 hasta NE+1
- /
*
,
/
Hacer I de NE-1 hasta 1
Suma0
Hacer K de I+1 hasta NE
Suma Suma + *
1/ ( ,NE+1-Suma)
Imprimir
Var
A,B: Array[1..10,1..10]of real;
I,K,J,NR: Integer;
begin
NR:= StrToInt(Edit1.Text);
For I:=1 To NR Do
For K:=1 To NR*2 Do
A[I,K]:= StrToFloat(StringGrid1.Cells[K,I]);
For I:=1 To NR Do
Begin
For K:=1 To NR Do
If K<>I
Then
Begin
For J:=I+1 To NR*2 Do
A[K,J]:= A[K,J]-((A[I,J]/A[I,I])*A[K,I]);
A[K,I]:= A[K,I]-((A[I,I]/A[I,I])*A[K,I]);
end;
For J:=I+1 To NR*2 Do
A[I,J]:= A[I,J]/A[I,I];
A[I,I]:= A[I,I]/A[I,I];
End;
For I:=1 To NR Do
For K:=1 To NR*2 Do
StringGrid2.Cells[K,I]:= FloatToStr(A[I,K]);
end;
INICIO
[A], NR
I=1
K=I+1
KI+1
JI+1
a[k,j] a [k,j]-[a[I,k]/aII)*a[k,j]
K NR
Si
K= K + 1
No
I= I + 1
Si
K= I + 1
J NR
J= I + 1
No
I NR
Si
No
[A]
Fin
Numero de ecuaciones NE
Matriz aumentada ai,K 1<=i<=NE 1<=K<=NE+1*2
Hacer I de q hasta NE
Hacer J de 1 hasta NE
Si J<>I
Entonces
Hacer K de I+1 hasta NE+1*2
aj,k aj,k-(ai,k/ai,i)*aj,i
Hacer k de I+1 hasta NE+1*2
aj,k ai,k/ai,i
Hacer I de 1 hasta NE
X1<--ai,NE+1
Imprimir Xi
VAR
N,I:INTEGER;
X:ARRAY[1..10]OF REAL;
Y:ARRAY[1..10]OF REAL;
FY:ARRAY[1..10]OF REAL;
A1,A0,PX,PY,SX,SY,XY,SX2:REAL;
begin
N:=STRTOINT(EDIT1.TEXT);
FOR I:=1 TO N DO
BEGIN
X[I]:=STRTOFLOAT(STRINGGRID1.Cells[1,I]);
Y[I]:=STRTOFLOAT(STRINGGRID2.Cells[1,I]);
END;
SX:=0;
SY:=0;
XY:=0;
FOR I:=1 TO N DO
BEGIN
SX:=SX+X[I];
PX:=SX/N;
SY:=SY+Y[I];
PY:=SY/N;
XY:=XY+(X[I]*Y[I]);
END;
SX2:=0;
FOR I:=1 TO N DO
SX2:=SX2+SQR(X[I]);
A1:=(N*XY-SX*SY)/(N*SX2-SQR(SX));
A0:=PY-(A1*PX);
FOR I:=1 TO N DO
BEGIN
FY[I]:=A0+(A1*X[I]);
STRINGGRID3.Cells[1,I]:=FLOATTOSTR(FY[I]);
EDIT2.Text:= FLOATTOSTR(A0);
EDIT3.Text:= FLOATTOSTR(A1);
END;
end;
INICIO
X, Y, n
y0=a0 +
a1X
Xi, Yi
Fin