Documente Academic
Documente Profesional
Documente Cultură
UNIVERSIDAD NACIONAL DE
HUANCAVELICA
FACULTAD DE CIENCIAS
DE LA INGENIERA
ESCUELA ACADMICO PROFESIONAL DE INGENIERA CIVIL - HUANCAVELICA
METODOS
NUMERICOS
CODIFICACION EN LOS DISTINTOS
LEGUAJES DE PROGRAMACION:
Diferencias Divididas, Regresiones,
Diferenciacin Numrica, Integracin
Numrica
INTEGRANTES:
CHACA AYUQUE, Diana
CCANTO LAURENTE, Erick
SANTOYO SUIGA, Nahomi
SANCHES AURIS, Graciela
CARHUAPOMA CHAHUAYO, Sheyli
LLIUYACC HUAMAN, Isaias
CICLO : IV
UNH - 2017
DEDICATORIA
Primeramente agradezco a Dios por darme la
vida y darme la fuerza necesaria para seguir
adelante, luego tambin agradezco a mis padres
por apoyarme siempre y tambin a todas las
personas que estn a m alrededor gracias por
esta siempre cuando uno los necesita.
1 INTRODUCCION . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2 INTERPOLACIN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
2.1 METODO DE NEWTON (DIFERENCIAS DIVIDIDAS) 6
2.1.1 INTERPOLACION LINEAL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
2.1.2 Interpolacin cuadrtica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.1.3 Forma general de los polinomios de interpolacin de Newton . . . . . . . . . . . . . 8
3 REGRESIONES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
3.1 Regresin lineal 11
3.2 Regresin no lineal 11
3.2.1 Regresin logartmica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
3.2.2 Regresin potencial . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
3.2.3 Regresin Exponencial . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
3.2.4 Regresin Inversa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
3.2.5 Regresin Mediana . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
3.3 Regresin Lineal Mltiple 13
3.4 Regresin Polinomial 13
AGETHRNHFDBSRHT
METODO DE NEWTON (DIFERENCIAS DIVIDI-
DAS)
INTERPOLACION LINEAL
Interpolacin cuadrtica
Forma general de los polinomios de inter-
polacin de Newton
2 INTERPOLACIN
f (x1 ) f (x0 )
x1 x0
f2 (x) = b0 + b1 (x x0 ) + b2 (x x0 )(x x1 )
Ntese que aunque la ecuacin parezca diferente de la ecuacin general de un polinomio:
f (x) = a0 + a1 x + a2 x2 + ... + an xn
Las dos ecuaciones son equivalentes. Se puede usar un procedimiento simple para determinar los
valores de los coeficientes. Para b0 , se usa la ecuacin con :
X = X0 y se obtiene
b0 = f (x0 )
Sustituyendo la ecuacin y evaluando en x = x1 se obtiene
f (x1 ) f (x0 )
b1 = x1 x0
Y por ltimo las ecuaciones se sustituyen en la ecuacin y se evala est en x = x2 y se obtiene
f (x2 ) f (x1 ) f (x ) f (x )
x2 x1 x1 x 0
b2 = x2 x1
1 0
f (xi ) f (x j )
f [xi , x j ] = xi x j (primera diferencia dividida)
f (xi ,x j ) f (x j ,xk )
f [xi , x j , xk ] = xi xk (segunda diferencial dividida)
EXPORT dca(m)
BEGIN
LOCAL k,n,mat_ini,comp;
mat_ini:=MAKEMAT(-1000000,rowDim(m),rowDim(m)+1);
//para f(x1)-f(x0)
comp:=MAKEMAT(0,2,rowDim(m));
FOR k FROM 1 TO rowDim(m) DO
comp(1,k):=m(k,1);
comp(2,k):=m(k,2);
END;
LOCAL simp,result;
//purge(X);
EDITMAT(mat_ini,{"RESULTADO",{"x","x","x","x","x","x","x","x","x","x","
x","x","x","x","x","x","x","x","x","x","x"},{"x","f(x)
a","a","a","a","a","a","a","a","a","a","a","a","a","a","a","a","a","a","a
","a","a"}});
simp:=lagrange(comp);
L1:={{mat_ini,simp}};
return L1;
return simp;
END;
Regresin lineal
Regresin no lineal
Regresin logartmica
Regresin potencial
Regresin Exponencial
Regresin Inversa
Regresin Mediana
Regresin Lineal Mltiple
Regresin Polinomial
3 REGRESIONES
Las tcnicas de regresin permiten hacer predicciones sobre los valores de cierta variable Y
(dependiente), a partir de los de otra X (independiente), entre las que intuimos que existe una
relacin.
graficar e inspeccionar los datos en forma visual, para asegurarnos que sea posible usar un modelo
lineal. Como ejemplo tenemos a los siguientes tipos de regresiones: 1. Regresin exponencial En
determinados experimentos, la dependencia entre las variables X e Y es de forma exponencial, en
cuyo caso interesa ajustar a la nube de puntos una funcin del tipo:
y = a0 ea1 x
ln(y) = a1 x + ln(a0 )
Seguidamente se obtiene los valores de a1 y a0 con el mismo procedimiento de la mnimos cuadra-
dos.
y = a0 xa1
Luego se linealiza tomando logaritmos:
y = ax1 + a0
Luego se lineal iza y se aplica del procedimiento de mnimos cuadrados.
Regresin Logstica
Se obtiene a partir de la siguiente forma
Y = 1+a Lea1 x Luego se lineal iza y se aplica del procedimiento de mnimos cuadrados.
0
3.3 Regresin Lineal Mltiple 13
Regresin Trigonomtrica
Se obtiene a partir de la siguiente forma
y = a1 x + a0
y = a0 + a1 x1 + a2 x2
Tal ecuacin es til particularmente cuando se ajustan datos experimentales en donde la variable
que est analizando, a menudo es funcin de otras dos variables. En este caso bidimensional, la
?lnea? de regresin viene a ser un ?plano?. Como con los casos anteriores, los ?mejores? valores
de los coeficientes se determinan agrupando la suma de los cuadrados de los residuos:
D = ni= j (yi a0 a1 x1 + a2 x2 )2 y derivando con respecto a cada uno de los coeficientes:
D1
a0 = 2 (yi a0 a1 x1 + a2 x2 ) Da01 = 2 x1 (yi a0 a1 x1 + a2 x2 )
Los coeficientes que generan la suma mnima de los cuadrados de los residuos se obtienen igualando
cada una de las derivadas parciales a cero y expresando la ecuacin como un conjunto de ecuaciones
lineales simultneas, de la forma:
g(x) = a0 + a1 x + a2 x2 + an xn di = yi ?g(xi )
14 REGRESIONES
Desviacin de la curva con respecto a cada Polinomio. La suma de los cuadrados de la desviacin
as:
D = (yi a0 a1 xi a2 xi2 + ... + an xin )2 Siguiendo el mismo procedimiento realizado en la
regresin lineal, tenemos derivados parciales con respecto a los coeficientes al polinomio.
D
a0 = 2 (yi a0 a1 xi a2 xi2 + ... + an xin )2 aD1 =
2 (yi a0 a1 xi a2 xi2 + ... + an xin )2 aD2 = 2 (yi a0 a1 xi a2 xi2 + ... + an xin )2
nota: todas las sumatorias van desde i=1 hasta n. El anterior sistema lo podemos expresar asi :
Al resolver este sistema de ecuaciones obtenemos los coeficientes: Ojo: si el polinomio es de grado
n, necesitamos n+1 ecuaciones lineales con n+1 incgnitas.
CODIFICACION EN HP
PRIME: REGRESIONES
LINEAL
MULTIPLE
LOGARITMICA
POTENCIAL
EXPONENCIAL
UNH - Ing. Civil Huancavelica
REGRESION LINEAL
EXPORT REG_LINEAL()
BEGIN
LOCAL n,i;
LOCAL mat;
LOCAL lis_XY;
LOCAL lis_XX;
LOCAL lis_YY;
LOCAL lis_Yy;
LOCAL lis_Xx;
LOCAL mat_res;
LOCAL suma_X;
LOCAL suma_Y;
LOCAL suma_XY;
LOCAL suma_XX;
LOCAL suma_YY;
LOCAL a,b,r;
LOCAL Xprom,Yprom;
INPUT({{n,[0],{50,20,3}}},"NMERO DE FILAS",{"n : "},{"Ingrese nmero de
filas"});
mat:=MAKEMAT(0,n,2);
EDITMAT(mat,{"DATOS",{"1","2"},{"X","Y",""}});
lis_Xx:={};
lis_Yy:={};
lis_XY:={};
lis_XX:={};
lis_YY:={};
suma_X:=0;
suma_Y:=0;
FOR i FROM 1 TO n DO
suma_X:=suma_X+mat(i,1);
suma_Y:=suma_Y+mat(i,2);
END;
Xprom:=(suma_X/n);
Yprom:=(suma_Y/n);
FOR i FROM 1 TO n DO
lis_Xx:=append(lis_Xx,mat(i,1)-Xprom);
lis_Yy:=append(lis_Yy,mat(i,2)-Yprom);
lis_XY:=append(lis_XY,(mat(i,1)-Xprom)*(mat(i,2)-Yprom));
lis_XX:=append(lis_XX,(mat(i,1)-Xprom)^2);
lis_YY:=append(lis_YY,(mat(i,2)-Yprom)^2);
END;
mat_res:=MAKEMAT(0,n,7);
FOR i FROM 1 TO n DO
mat_res(i,1):=mat(i,1);
mat_res(i,2):=mat(i,2);
UNH - Ing. Civil Huancavelica
mat_res(i,3):=lis_Xx(i);
mat_res(i,4):=lis_Yy(i);
mat_res(i,5):=lis_XY(i);
mat_res(i,6):=lis_XX(i);
mat_res(i,7):=lis_YY(i);
END;
suma_XY:=sum(lis_XY);
suma_XX:=sum(lis_XX);
suma_YY:=sum(lis_YY);
b:=(suma_XY)/(suma_XX);
a:= Yprom-b*Xprom;
r:= (suma_XY)/((suma_XX*suma_YY)^0.5);
R:= r*r;
EDITMAT(mat_res,{"TABLA DE RESULTADOS",{"1","2","3"},{"X","Y","Xi-
X","Yi-Y","XY","X^2","Y^2",""}});
PRINT;
PRINT("Las constantes son ");
PRINT("B0 = "+a);
PRINT("B1 = "+b);
PRINT("El coef. de correlacin r = "+ROUND(r,4));
PRINT("El coef. de determinacin R = "+ROUND(R,3));
PRINT("la ecuacin esY = B0 +B1*X");
PRINT("Y = "+ROUND(a,3)+"+"+ROUND(b,3)+" X");
END;
UNH - Ing. Civil Huancavelica
REGRESION MULTIPLE
MDATO:=[ [ 124, 145.5, 160.7, 146 ], [ 103.8, 155.5, 161.8, 83 ], [ 186.6, 248.2, 242.3,
141.5 ], [ 25.1, 30.1, 50.3, 79 ], [ 3.8, 3.2, 3.2, 0 ], [ 1.5, 1.3, 0.8, 0.5 ], [ 2, 6.9, 3, 4.5 ], [
0, 0, 0, 1 ], [ 58.5, 67.4, 61.3, 39.5 ] ];
MITER:=[[0]];
coefi:=[[0]];
EXPORT regreMul()
BEGIN
LOCAL opc;
WHILE opc<>6 DO
CHOOSE(opc,"REGRSION
MUL",{"DATOS","TABLA","ECUACION","Ent_Soluc","FONO","SALIR"});
LOCAL DaTo:=MDATO;
LOCAL n;
LOCAL SumX1, SumX2, SumXX1, SumXX2;
LOCAL SumX12,SumY,SumYX1,SumYX2;
LOCAL Etique;
n:=rowDim(DaTo);
Etique:={};
FOR I FROM 1 TO n DO
Etique(0):="N_"+STRING(ROUND(I,0),1);
END;Etique(0):="";Etique(0):="";Etique(0):="";
//Lista de nombre
IF opc==1 THEN
EDITMAT(DaTo,{"REGRESIN LINEAL
MULTIPLE",Etique,{"X1","X2","X3","Y","",""}});
MDATO:=DaTo;
SumX1:=0;
SumX2:=0;
SumXX1:=0;
SumXX2:=0;
SumX12:=0;
SumY:=0;
SumYX1:=0;
SumYX2:=0;
FOR I FROM 1 TO n DO
SumX1:=SumX1+DaTo(I,1);
SumX2:=SumX2+DaTo(I,2);
SumXX1:=SumXX1+DaTo(I,1)^2;
SumXX2:=SumXX2+DaTo(I,2)^2;
SumX12:=SumX12+DaTo(I,1)*DaTo(I,2);
SumY:=SumY+DaTo(I,3);
SumYX1:=SumYX1+DaTo(I,1)*DaTo(I,3);
SumYX2:=SumYX2+DaTo(I,2)*DaTo(I,3);
UNH - Ing. Civil Huancavelica
MITER(I,1):=DaTo(I,3);
MITER(I,2):=DaTo(I,1);
MITER(I,3):=DaTo(I,2);
MITER(I,4):=DaTo(I,1)^2;
MITER(I,5):=DaTo(I,2)^2;
MITER(I,6):=DaTo(I,2)*DaTo(I,1);
MITER(I,7):=DaTo(I,1)*DaTo(I,3);
MITER(I,8):=DaTo(I,2)*DaTo(I,3);
END;
coefi:=(([[n,SumX1,SumX2],[
SumX1,SumXX1,SumX12],[SumX2,SumX12,SumXX2]])^-
1)*[[SumY],[SumYX1],[SumYX2]];
END;
IF opc==2 THEN
EDITMAT(MITER,{"REGRESIN LINEAL
MULTIPLE",Etique,{"Y","X1","X2","X1^2","X2^2","X1*X2","Y*X1","Y*X2",""}});
END;
IF opc==3 THEN
MSGBOX("ao ="+coefi(1,1)+ " a1 ="+ coefi(2,1)+ " a2 ="+ coefi(3,1));
END;
IF opc==4 THEN
LOCAL ECUACION;
ECUACION:="Y="+coefi(1,1)+"+"+coefi(2,1)+"*X1+"+coefi(3,1)+"*X2";
E1:=ECUACION;
STARTAPP("Soluc.");
//BREAK(1);
END;
IF opc==5 THEN
MSGBOX("VEN AMI CASA");
END;
END;
END;
UNH - Ing. Civil Huancavelica
REGRESION LOGARITMICA
EXPORT REG_LOGARITMICA()
BEGIN
LOCAL n,i;
LOCAL mat;
LOCAL lis_XY;
LOCAL lis_XX;
LOCAL lis_YY;
LOCAL lis_Yy;
LOCAL lis_Xx;
LOCAL lis_LNx;
LOCAL mat_res;
LOCAL suma_X;
LOCAL suma_Y;
LOCAL suma_XY;
LOCAL suma_XX;
LOCAL suma_YY;
LOCAL a,b,r,R;
LOCAL Xprom,Yprom;
Xprom:=(suma_X/n);
Yprom:=(suma_Y/n);
FOR i FROM 1 TO n DO
lis_LNx:=append(lis_LNx,LN(mat(i,1)));
lis_Xx:=append(lis_Xx,LN(mat(i,1))-Xprom);
lis_Yy:=append(lis_Yy,mat(i,2)-Yprom);
lis_XY:=append(lis_XY,(LN(mat(i,1))-Xprom)*(mat(i,2)-Yprom));
lis_XX:=append(lis_XX,(LN(mat(i,1))-Xprom)^2);
lis_YY:=append(lis_YY,(mat(i,2)-Yprom)^2);
END;
mat_res:=MAKEMAT(0,n,8);
FOR i FROM 1 TO n DO
UNH - Ing. Civil Huancavelica
mat_res(i,1):=mat(i,1);
mat_res(i,2):=lis_LNx(i);
mat_res(i,3):=mat(i,2);
mat_res(i,4):=lis_Xx(i);
mat_res(i,5):=lis_Yy(i);
mat_res(i,6):=lis_XY(i);
mat_res(i,7):=lis_XX(i);
mat_res(i,8):=lis_YY(i);
END;
suma_XY:=sum(lis_XY);
suma_XX:=sum(lis_XX);
suma_YY:=sum(lis_YY);
b:=(suma_XY)/(suma_XX);
a:= Yprom-b*Xprom;
r:= (suma_XY)/((suma_XX*suma_YY)^0.5);
R:= r*r;
EDITMAT(mat_res,{"TABLA DE
RESULTADOS",{"1","2","3"},{"X","LNx","Y","Xi-X","Yi-
Y","XY","X^2","Y^2",""}});
PRINT;
PRINT("Las constantes son ");
PRINT("B0 = "+a);
PRINT("B1 = "+b);
PRINT("El coef. de correlacin r = "+ROUND(r,4));
PRINT("El coef. de determinacin R = "+ROUND(R,3));
PRINT("la ecuacin es Y= B0+B1*LnX");
PRINT("Y = "+ROUND(a,3)+"+"+ROUND(b,3)+"ln X");
END;
UNH - Ing. Civil Huancavelica
REGRESION POTENCIAL
EXPORT REG_POTENCIAL()
BEGIN
LOCAL n,i;
LOCAL mat;
LOCAL lis_XY;
LOCAL lis_XX;
LOCAL lis_YY;
LOCAL lis_Yy;
LOCAL lis_Xx;
LOCAL lis_LOGx;
LOCAL lis_LOGy;
LOCAL mat_res;
LOCAL suma_X;
LOCAL suma_Y;
LOCAL suma_XY;
LOCAL suma_XX;
LOCAL suma_YY;
LOCAL a,b,r,R;
LOCAL Xprom,Yprom;
INPUT({{n,[0],{50,20,3}}},"NMERO DE FILAS",{"n : "},{"Ingrese nmero de
filas"});
mat:=MAKEMAT(0,n,2);
EDITMAT(mat,{"DATOS",{"1","2"},{"X","Y",""}});
lis_LOGx:={};
lis_LOGy:={};
lis_Xx:={};
lis_Yy:={};
lis_XY:={};
lis_XX:={};
lis_YY:={};
suma_X:=0;
suma_Y:=0;
FOR i FROM 1 TO n DO
suma_X:=suma_X+(LOG(mat(i,1)));
suma_Y:=suma_Y+(LOG(mat(i,2)));
END;
Xprom:=(suma_X/n);
Yprom:=(suma_Y/n);
FOR i FROM 1 TO n DO
lis_LOGx:=append(lis_LOGx,LOG(mat(i,1)));
lis_LOGy:=append(lis_LOGy,LOG(mat(i,2)));
lis_Xx:=append(lis_Xx,LOG(mat(i,1))-Xprom);
lis_Yy:=append(lis_Yy,LOG(mat(i,2))-Yprom);
lis_XY:=append(lis_XY,(LOG(mat(i,1))-Xprom)*(LOG(mat(i,2))-Yprom));
lis_XX:=append(lis_XX,(LOG(mat(i,1))-Xprom)^2);
lis_YY:=append(lis_YY,(LOG(mat(i,2))-Yprom)^2);
END;
mat_res:=MAKEMAT(0,n,9);
FOR i FROM 1 TO n DO
UNH - Ing. Civil Huancavelica
mat_res(i,1):=mat(i,1);
mat_res(i,2):=mat(i,2);
mat_res(i,3):=lis_LOGx(i);
mat_res(i,4):=lis_LOGy(i);
mat_res(i,5):=lis_Xx(i);
mat_res(i,6):=lis_Yy(i);
mat_res(i,7):=lis_XY(i);
mat_res(i,8):=lis_XX(i);
mat_res(i,9):=lis_YY(i);
END;
suma_XY:=sum(lis_XY);
suma_XX:=sum(lis_XX);
suma_YY:=sum(lis_YY);
b:=(suma_XY)/(suma_XX);
a:= ALOG(Yprom-b*Xprom);
r:=(suma_XY)/((suma_XX*suma_YY)^0.5);
R:= r*r;
EDITMAT(mat_res,{"TABLA DE
RESULTADOS",{"1","2","3"},{"X","Y","LOGx","LOGy","Xi-X","Yi-
Y","XY","X^2","Y^2",""}});
PRINT;
PRINT("Las constantes son ");
PRINT("B0 = "+a);
PRINT("B1 = "+b);
PRINT("El coef. de correlacin r = "+ROUND(r,4));
PRINT("El coef. de determinacin R = "+ROUND(R,3));
PRINT("la ecuacin es Y=B0*X^B1");
PRINT("Y = "+ROUND(a,3)+"*X^"+ROUND(b,3)+"");
END;
UNH - Ing. Civil Huancavelica
REGRESION EXPONENCIAL
EXPORT REG_EXPONENCIAL()
BEGIN
LOCAL n,i;
LOCAL mat;
LOCAL lis_XY;
LOCAL lis_XX;
LOCAL lis_YY;
LOCAL lis_Yy;
LOCAL lis_Xx;
LOCAL lis_LOGx;
LOCAL lis_LOGy;
LOCAL mat_res;
LOCAL suma_X;
LOCAL suma_Y;
LOCAL suma_XY;
LOCAL suma_XX;
LOCAL suma_YY;
LOCAL a,b,r,R;
LOCAL Xprom,Yprom;
INPUT({{n,[0],{50,20,3}}},"NMERO DE FILAS",{"n : "},{"Ingrese nmero de
filas"});
mat:=MAKEMAT(0,n,2);
EDITMAT(mat,{"DATOS",{"1","2"},{"X","Y",""}});
lis_LOGx:={};
lis_LOGy:={};
lis_Xx:={};
lis_Yy:={};
lis_XY:={};
lis_XX:={};
lis_YY:={};
suma_X:=0;
suma_Y:=0;
FOR i FROM 1 TO n DO
suma_X:=suma_X+(LOG(mat(i,1)));
suma_Y:=suma_Y+(LOG(mat(i,2)));
END;
Xprom:=(suma_X/n);
Yprom:=(suma_Y/n);
FOR i FROM 1 TO n DO
lis_LOGx:=append(lis_LOGx,LOG(mat(i,1)));
lis_LOGy:=append(lis_LOGy,LOG(mat(i,2)));
lis_Xx:=append(lis_Xx,LOG(mat(i,1))-Xprom);
lis_Yy:=append(lis_Yy,LOG(mat(i,2))-Yprom);
lis_XY:=append(lis_XY,(LOG(mat(i,1))-Xprom)*(LOG(mat(i,2))-Yprom));
lis_XX:=append(lis_XX,(LOG(mat(i,1))-Xprom)^2);
lis_YY:=append(lis_YY,(LOG(mat(i,2))-Yprom)^2);
END;
mat_res:=MAKEMAT(0,n,9);
FOR i FROM 1 TO n DO
UNH - Ing. Civil Huancavelica
mat_res(i,1):=mat(i,1);
mat_res(i,2):=mat(i,2);
mat_res(i,3):=lis_LOGx(i);
mat_res(i,4):=lis_LOGy(i);
mat_res(i,5):=lis_Xx(i);
mat_res(i,6):=lis_Yy(i);
mat_res(i,7):=lis_XY(i);
mat_res(i,8):=lis_XX(i);
mat_res(i,9):=lis_YY(i);
END;
suma_XY:=sum(lis_XY);
suma_XX:=sum(lis_XX);
suma_YY:=sum(lis_YY);
b:=(suma_XY)/(suma_XX);
a:= ALOG(Yprom-b*Xprom);
r:=(suma_XY)/((suma_XX*suma_YY)^0.5);
R:= r*r;
EDITMAT(mat_res,{"TABLA DE
RESULTADOS",{"1","2","3"},{"X","Y","LOGx","LOGy","Xi-X","Yi-
Y","XY","X^2","Y^2",""}});
PRINT;
PRINT("Las constantes son ");
PRINT("B0 = "+a);
PRINT("B1 = "+b);
PRINT("El coef. de correlacin r = "+ROUND(r,4));
PRINT("El coef. de determinacin R = "+ROUND(R,3));
PRINT("la ecuacin es Y=B0*X^B1");
PRINT("Y = "+ROUND(a,3)+"*X^"+ROUND(b,3)+"");
END;
CODIFICACION EN
C++:
REGRESIONES
Lineal
Logartmica
Potencial
Exponencial
Regresin Simple
#include<cstdio>
#include<cmath>
int main (){
float X1,X2,X3,X4,X5,X6,X7,X8,X9;
float a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p;
float A,B,C,D,E,F,G,H,I,J,K,L,M,N,O;
float
difX,difa,difb,difc,difd,dife,diff,difg,difh,difi;
float
diY,diya,diyb,diyc,diyd,diye,diyf,diyg,diyh,diyi;
float
proda,prodb,prodc,prodd,prode,prodf,prodg,prodh,prodi;
float
cuaxra,cuaxrb,cuaxrc,cuaxrd,cuaxre,cuaxrf,cuaxrg,cuaxrh,
cuaxri;
float
cuayra,cuayrb,cuayrc,cuayrd,cuayre,cuayrf,cuayrg,cuayrh,
cuayri;
float Sxy,Sxx,Syy,Bx,By,R,r;
printf("\n\nY1 = ");
scanf("%f",&a);
printf("Y2 = ");
scanf("%f",&b);
printf("Y3 = ");
scanf("%f",&c);
printf("Y4 = ");
scanf("%f",&d);
printf("Y5 = ");
scanf("%f",&e);
printf("Y6 = ");
scanf("%f",&f);
printf("Y7 = ");
scanf("%f",&g);
printf("Y8 = ");
scanf("%f",&h);
printf("Y9 = ");
scanf("%f",&i);
A=(X1+X2+X3+X4+X5+X6+X7+X8+X9)/9;
B=(a+b+c+d+e+f+g+h+i)/9;
difa=X1-A;
difb=X2-A;
difc=X3-A;
difd=X4-A;
dife=X5-A;
diff=X6-A;
difg=X7-A;
difh=X8-A;
difi=X9-A;
diya=a-B;
diyb=b-B;
diyc=c-B;
diyd=d-B;
diye=e-B;
diyf=f-B;
diyg=g-B;
diyh=h-B;
diyi=i-B;
proda=difa*diya;
prodb=difb*diyb;
prodc=difc*diyc;
prodd=difd*diyd;
prode=dife*diye;
prodf=diff*diyf;
prodg=difg*diyg;
prodh=difh*diyh;
prodi=difi*diyi;
cuaxra=difa*difa;
cuaxrb=difb*difb;
cuaxrc=difc*difc;
cuaxrd=difd*difd;
cuaxre=dife*dife;
cuaxrf=diff*diff;
cuaxrg=difg*difg;
cuaxrh=difh*difh;
cuaxri=difi*difi;
cuayra=diya*diya;
cuayrb=diyb*diyb;
cuayrc=diyc*diyc;
cuayrd=diyd*diyd;
cuayre=diye*diye;
cuayrf=diyf*diyf;
cuayrg=diyg*diyg;
cuayrh=diyh*diyh;
cuayri=diyi*diyi;
Bx=Sxy/Sxx;
By=B-(Bx*A);
r=Sxy/pow(Sxx*Syy,0.5);
R=pow(r,2);
printf("\n\nCOEFICIENTE DE CORRELACION LINEAL r = %f",r);
printf("\nCOEFICIENTE DE DETERMINACION R = %f",R);
}
Regresin Simple
#include<cstdio>
#include<cmath> de 5 puntos
int main (){
float X1,X2,X3,X4,X5;
float a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p;
float A,B;
float difX,difa,difb,difc,difd,dife;
float diY,diya,diyb,diyc,diyd,diye;
float proda,prodb,prodc,prodd,prode;
float cuaxra,cuaxrb,cuaxrc,cuaxrd,cuaxre;
float cuayra,cuayrb,cuayrc,cuayrd,cuayre;
float Sxy,Sxx,Syy,Bx,By,R,r;
printf("\n\nY1 = ");
scanf("%f",&a);
printf("Y2 = ");
scanf("%f",&b);
printf("Y3 = ");
scanf("%f",&c);
printf("Y4 = ");
scanf("%f",&d);
printf("Y5 = ");
scanf("%f",&e);
A=(X1+X2+X3+X4+X5)/5;
B=(a+b+c+d+e)/5;
difa=X1-A;
difb=X2-A;
difc=X3-A;
difd=X4-A;
dife=X5-A;
diya=a-B;
diyb=b-B;
diyc=c-B;
diyd=d-B;
diye=e-B;
proda=difa*diya;
prodb=difb*diyb;
prodc=difc*diyc;
prodd=difd*diyd;
prode=dife*diye;
cuaxra=difa*difa;
cuaxrb=difb*difb;
cuaxrc=difc*difc;
cuaxrd=difd*difd;
cuaxre=dife*dife;
cuayra=diya*diya;
cuayrb=diyb*diyb;
cuayrc=diyc*diyc;
cuayrd=diyd*diyd;
cuayre=diye*diye;
Sxy=(proda+prodb+prodc+prodd+prode);
Sxx=(cuaxra+cuaxrb+cuaxrc+cuaxrd+cuaxre);
Syy=(cuayra+cuayrb+cuayrc+cuayrd+cuayre);
Bx=Sxy/Sxx;
By=B-(Bx*A);
}
Regresin Simple
#include<cstdio>
#include<cmath> de 6 puntos
int main (){
float X1,X2,X3,X4,X5,X6;
float a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p;
float A,B;
float difX,difa,difb,difc,difd,dife,diff;
float diY,diya,diyb,diyc,diyd,diye,diyf;
float proda,prodb,prodc,prodd,prode,prodf;
float cuaxra,cuaxrb,cuaxrc,cuaxrd,cuaxre,cuaxrf;
float cuayra,cuayrb,cuayrc,cuayrd,cuayre,cuayrf;
float Sxy,Sxx,Syy,Bx,By,R,r;
printf("\n\nY1 = ");
scanf("%f",&a);
printf("Y2 = ");
scanf("%f",&b);
printf("Y3 = ");
scanf("%f",&c);
printf("Y4 = ");
scanf("%f",&d);
printf("Y5 = ");
scanf("%f",&e);
printf("Y6 = ");
scanf("%f",&f);
A=(X1+X2+X3+X4+X5+X6)/6;
B=(a+b+c+d+e+f)/6;
difa=X1-A;
difb=X2-A;
difc=X3-A;
difd=X4-A;
dife=X5-A;
diff=X6-A;
diya=a-B;
diyb=b-B;
diyc=c-B;
diyd=d-B;
diye=e-B;
diyf=f-B;
proda=difa*diya;
prodb=difb*diyb;
prodc=difc*diyc;
prodd=difd*diyd;
prode=dife*diye;
prodf=diff*diyf;
cuaxra=difa*difa;
cuaxrb=difb*difb;
cuaxrc=difc*difc;
cuaxrd=difd*difd;
cuaxre=dife*dife;
cuaxrf=diff*diff;
cuayra=diya*diya;
cuayrb=diyb*diyb;
cuayrc=diyc*diyc;
cuayrd=diyd*diyd;
cuayre=diye*diye;
cuayrf=diyf*diyf;
Bx=Sxy/Sxx;
By=B-(Bx*A);
r=Sxy/pow(Sxx*Syy,0.5);
R=pow(r,2);
printf("\n\nCOEFICIENTE DE CORRELACION LINEAL r = %f",r);
printf("\nCOEFICIENTE DE DETERMINACION R = %f",R);
}
Regresin Simple
#include<cstdio>
#include<cmath> de 7 puntos
int main (){
float X1,X2,X3,X4,X5,X6,X7;
float a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p;
float A,B;
float difX,difa,difb,difc,difd,dife,diff,difg;
float diY,diya,diyb,diyc,diyd,diye,diyf,diyg;
float proda,prodb,prodc,prodd,prode,prodf,prodg;
float
cuaxra,cuaxrb,cuaxrc,cuaxrd,cuaxre,cuaxrf,cuaxrg;
float
cuayra,cuayrb,cuayrc,cuayrd,cuayre,cuayrf,cuayrg;
float Sxy,Sxx,Syy,Bx,By,R,r;
printf("\n\nY1 = ");
scanf("%f",&a);
printf("Y2 = ");
scanf("%f",&b);
printf("Y3 = ");
scanf("%f",&c);
printf("Y4 = ");
scanf("%f",&d);
printf("Y5 = ");
scanf("%f",&e);
printf("Y6 = ");
scanf("%f",&f);
printf("Y7 = ");
scanf("%f",&g);
A=(X1+X2+X3+X4+X5+X6+X7)/7;
B=(a+b+c+d+e+f+g)/7;
difa=X1-A;
difb=X2-A;
difc=X3-A;
difd=X4-A;
dife=X5-A;
diff=X6-A;
difg=X7-A;
diya=a-B;
diyb=b-B;
diyc=c-B;
diyd=d-B;
diye=e-B;
diyf=f-B;
diyg=g-B;
proda=difa*diya;
prodb=difb*diyb;
prodc=difc*diyc;
prodd=difd*diyd;
prode=dife*diye;
prodf=diff*diyf;
prodg=difg*diyg;
cuaxra=difa*difa;
cuaxrb=difb*difb;
cuaxrc=difc*difc;
cuaxrd=difd*difd;
cuaxre=dife*dife;
cuaxrf=diff*diff;
cuaxrg=difg*difg;
cuayra=diya*diya;
cuayrb=diyb*diyb;
cuayrc=diyc*diyc;
cuayrd=diyd*diyd;
cuayre=diye*diye;
cuayrf=diyf*diyf;
cuayrg=diyg*diyg;
Sxy=(proda+prodb+prodc+prodd+prode+prodf+prodg);
Sxx=(cuaxra+cuaxrb+cuaxrc+cuaxrd+cuaxre+cuaxrf+cuaxr
g);
Syy=(cuayra+cuayrb+cuayrc+cuayrd+cuayre+cuayrf+cuayr
g);
Bx=Sxy/Sxx;
By=B-(Bx*A);
r=Sxy/pow(Sxx*Syy,0.5);
R=pow(r,2);
printf("\n\nCOEFICIENTE DE CORRELACION LINEAL r = %f",r);
printf("\nCOEFICIENTE DE DETERMINACION R = %f",R);
Regresin Simple
#include<cstdio>
#include<cmath> de 8 puntos
int main (){
float X1,X2,X3,X4,X5,X6,X7,X8;
float a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p;
float A,B;
float difX,difa,difb,difc,difd,dife,diff,difg,difh;
float diY,diya,diyb,diyc,diyd,diye,diyf,diyg,diyh;
float
proda,prodb,prodc,prodd,prode,prodf,prodg,prodh;
float
cuaxra,cuaxrb,cuaxrc,cuaxrd,cuaxre,cuaxrf,cuaxrg,cuaxrh;
float
cuayra,cuayrb,cuayrc,cuayrd,cuayre,cuayrf,cuayrg,cuayrh;
float Sxy,Sxx,Syy,Bx,By,R,r;
A=(X1+X2+X3+X4+X5+X6+X7+X8/8;
B=(a+b+c+d+e+f+g+h)/8;
difa=X1-A;
difb=X2-A;
difc=X3-A;
difd=X4-A;
dife=X5-A;
diff=X6-A;
difg=X7-A;
difh=X8-A;
diya=a-B;
diyb=b-B;
diyc=c-B;
diyd=d-B;
diye=e-B;
diyf=f-B;
diyg=g-B;
diyh=h-B;
proda=difa*diya;
prodb=difb*diyb;
prodc=difc*diyc;
prodd=difd*diyd;
prode=dife*diye;
prodf=diff*diyf;
prodg=difg*diyg;
prodh=difh*diyh;
cuaxra=difa*difa;
cuaxrb=difb*difb;
cuaxrc=difc*difc;
cuaxrd=difd*difd;
cuaxre=dife*dife;
cuaxrf=diff*diff;
cuaxrg=difg*difg;
cuaxrh=difh*difh;
cuayra=diya*diya;
cuayrb=diyb*diyb;
cuayrc=diyc*diyc;
cuayrd=diyd*diyd;
cuayre=diye*diye;
cuayrf=diyf*diyf;
cuayrg=diyg*diyg;
cuayrh=diyh*diyh;
printf(" X Y X-X1 Y-Y1 (X-X1)*(Y-Y1)
(X-X1)^2 (Y-Y1)^2 ");
Sxy=(proda+prodb+prodc+prodd+prode+prodf+prodg+prodh
);
Sxx=(cuaxra+cuaxrb+cuaxrc+cuaxrd+cuaxre+cuaxrf+cuaxr
g+cuaxrh);
Syy=(cuayra+cuayrb+cuayrc+cuayrd+cuayre+cuayrf+cuayr
g+cuayrh);
Bx=Sxy/Sxx;
By=B-(Bx*A);
r=Sxy/pow(Sxx*Syy,0.5);
R=pow(r,2);
printf("\n\nCOEFICIENTE DE CORRELACION LINEAL r = %f",r);
printf("\nCOEFICIENTE DE DETERMINACION R = %f",R);
}
Regresin Logartmica
#include<cstdio> de 5 puntos
#include<cmath>
int main (){
float X1,X2,X3,X4,X5;
float a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p;
float A,B;
float difX,difa,difb,difc,difd,dife;
float diY,diya,diyb,diyc,diyd,diye;
float proda,prodb,prodc,prodd,prode;
float cuaxra,cuaxrb,cuaxrc,cuaxrd,cuaxre;
float cuayra,cuayrb,cuayrc,cuayrd,cuayre;
float Sxy,Sxx,Syy,Bx,By,R,r;
double numero,lna,lnb,lnc,lnd,lne;
double lnya,lnyb,lnyc,lnyd,lnye,lnx;
double log(double x);
printf("\n\nY1 = ");
scanf("%f",&a);
printf("Y2 = ");
scanf("%f",&b);
printf("Y3 = ");
scanf("%f",&c);
printf("Y4 = ");
scanf("%f",&d);
printf("Y5 = ");
scanf("%f",&e);
A=(X1+X2+X3+X4+X5)/5;
B=(a+b+c+d+e)/5;
lna = log(X1);
lnb = log(X2);
lnc = log(X3);
lnd = log(X4);
lne = log(X5);
lnx=(lna+lnb+lnc+lnd+lne)/5;
difa=log(X1)-lnx;
difa=log(X1)-lnx;
difb=log(X1)-lnx;
difc=log(X3)-lnx;
difd=log(X4)-lnx;
dife=log(X5)-lnx;
diya=a-B;
diyb=b-B;
diyc=c-B;
diyd=d-B;
diye=e-B;
proda=difa*diya;
prodb=difb*diyb;
prodc=difc*diyc;
prodd=difd*diyd;
prode=dife*diye;
cuaxra=pow(difa,2);
cuaxrb=pow(difb,2);
cuaxrc=pow(difc,2);
cuaxrd=pow(difd,2);
cuaxre=pow(dife,2);
cuayra=diya*diya;
cuayrb=diyb*diyb;
cuayrc=diyc*diyc;
cuayrd=diyd*diyd;
cuayre=diye*diye;
Sxy=(proda+prodb+prodc+prodd+prode);
Sxx=(cuaxra+cuaxrb+cuaxrc+cuaxrd+cuaxre);
Syy=(cuayra+cuayrb+cuayrc+cuayrd+cuayre);
Bx=(Sxy/Sxx);
printf("%f",Bx);
By=B-(Bx*lnx);
r=Sxy/pow(Sxx*Syy,0.5);
R=pow(r,2);
}
Regresin Logartmica
#include<cstdio> de 6 puntos
#include<cmath>
int main (){
float X1,X2,X3,X4,X5,X6;
float a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p;
float A,B;
float difX,difa,difb,difc,difd,dife,diff;
float diY,diya,diyb,diyc,diyd,diye,diyf;
float proda,prodb,prodc,prodd,prode,prodf;
float cuaxra,cuaxrb,cuaxrc,cuaxrd,cuaxre,cuaxrf;
float cuayra,cuayrb,cuayrc,cuayrd,cuayre,cuayrf;
float Sxy,Sxx,Syy,Bx,By,R,r;
double numero,lna,lnb,lnc,lnd,lne,lnf;
double lnya,lnyb,lnyc,lnyd,lnye,lnyf,lnx;
double log(double x);
printf("\n\nY1 = ");
scanf("%f",&a);
printf("Y2 = ");
scanf("%f",&b);
printf("Y3 = ");
scanf("%f",&c);
printf("Y4 = ");
scanf("%f",&d);
printf("Y5 = ");
scanf("%f",&e);
printf("Y6 = ");
scanf("%f",&f);
A=(X1+X2+X3+X4+X5+X6)/6;
B=(a+b+c+d+e+f)/6;
lna = log(X1);
lnb = log(X2);
lnc = log(X3);
lnd = log(X4);
lne = log(X5);
lnf = log(X6);
lnx=(lna+lnb+lnc+lnd+lne+lnf)/6;
difa=log(X1)-lnx;
difa=log(X1)-lnx;
difb=log(X1)-lnx;
difc=log(X3)-lnx;
difd=log(X4)-lnx;
dife=log(X5)-lnx;
diff=log(X6)-lnx;
diya=a-B;
diyb=b-B;
diyc=c-B;
diyd=d-B;
diye=e-B;
diyf=f-B;
proda=difa*diya;
prodb=difb*diyb;
prodc=difc*diyc;
prodd=difd*diyd;
prode=dife*diye;
prodf=diff*diyf;
cuaxra=pow(difa,2);
cuaxrb=pow(difb,2);
cuaxrc=pow(difc,2);
cuaxrd=pow(difd,2);
cuaxre=pow(dife,2);
cuaxrf=pow(diff,2);
cuayra=diya*diya;
cuayrb=diyb*diyb;
cuayrc=diyc*diyc;
cuayrd=diyd*diyd;
cuayre=diye*diye;
cuayrf=diyf*diyf;
Sxy=(proda+prodb+prodc+prodd+prode+prodf);
Sxx=(cuaxra+cuaxrb+cuaxrc+cuaxrd+cuaxre+cuaxrf);
Syy=(cuayra+cuayrb+cuayrc+cuayrd+cuayre+cuayrf);
Bx=(Sxy/Sxx);
printf("%f",Bx);
By=B-(Bx*lnx);
r=Sxy/pow(Sxx*Syy,0.5);
R=pow(r,2);
}
Regresin Logartmica
#include<cstdio> de 7 puntos
#include<cmath>
int main (){
float X1,X2,X3,X4,X5,X6,X7;
float a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p;
float A,B;
float difX,difa,difb,difc,difd,dife,diff,difg;
float diY,diya,diyb,diyc,diyd,diye,diyf,diyg;
float proda,prodb,prodc,prodd,prode,prodf,prodg;
float
cuaxra,cuaxrb,cuaxrc,cuaxrd,cuaxre,cuaxrf,cuaxrg;
float
cuayra,cuayrb,cuayrc,cuayrd,cuayre,cuayrf,cuayrg;
float Sxy,Sxx,Syy,Bx,By,R,r;
double numero,lna,lnb,lnc,lnd,lne,lnf,lng;
double lnya,lnyb,lnyc,lnyd,lnye,lnyf,lnyg,lnx;
double log(double x);
printf("\n\nY1 = ");
scanf("%f",&a);
printf("Y2 = ");
scanf("%f",&b);
printf("Y3 = ");
scanf("%f",&c);
printf("Y4 = ");
scanf("%f",&d);
printf("Y5 = ");
scanf("%f",&e);
printf("Y6 = ");
scanf("%f",&f);
printf("Y7 = ");
scanf("%f",&g);
A=(X1+X2+X3+X4+X5+X6+X7)/7;
B=(a+b+c+d+e+f+g)/7;
lna = log(X1);
lnb = log(X2);
lnc = log(X3);
lnd = log(X4);
lne = log(X5);
lnf = log(X6);
lng = log(X7);
lnx=(lna+lnb+lnc+lnd+lne+lnf+lng)/7;
difa=log(X1)-lnx;
difa=log(X1)-lnx;
difb=log(X1)-lnx;
difc=log(X3)-lnx;
difd=log(X4)-lnx;
dife=log(X5)-lnx;
diff=log(X6)-lnx;
difg=log(X7)-lnx;
diya=a-B;
diyb=b-B;
diyc=c-B;
diyd=d-B;
diye=e-B;
diyf=f-B;
diyg=g-B;
proda=difa*diya;
prodb=difb*diyb;
prodc=difc*diyc;
prodd=difd*diyd;
prode=dife*diye;
prodf=diff*diyf;
prodg=difg*diyg;
cuaxra=pow(difa,2);
cuaxrb=pow(difb,2);
cuaxrc=pow(difc,2);
cuaxrd=pow(difd,2);
cuaxre=pow(dife,2);
cuaxrf=pow(diff,2);
cuaxrg=pow(difg,2);
cuayra=diya*diya;
cuayrb=diyb*diyb;
cuayrc=diyc*diyc;
cuayrd=diyd*diyd;
cuayre=diye*diye;
cuayrf=diyf*diyf;
cuayrg=diyg*diyg;
Bx=(Sxy/Sxx);
printf("%f",Bx);
By=B-(Bx*lnx);
r=Sxy/pow(Sxx*Syy,0.5);
R=pow(r,2);
}
Regresin Logartmica
#include<cstdio> de 8 puntos
#include<cmath>
int main (){
float X1,X2,X3,X4,X5,X6,X7,X8;
float a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p;
float A,B;
float difX,difa,difb,difc,difd,dife,diff,difg,difh;
float diY,diya,diyb,diyc,diyd,diye,diyf,diyg,diyh;
float
proda,prodb,prodc,prodd,prode,prodf,prodg,prodh;
float
cuaxra,cuaxrb,cuaxrc,cuaxrd,cuaxre,cuaxrf,cuaxrg,cuaxrh;
float
cuayra,cuayrb,cuayrc,cuayrd,cuayre,cuayrf,cuayrg,cuayrh;
float Sxy,Sxx,Syy,Bx,By,R,r;
double numero,lna,lnb,lnc,lnd,lne,lnf,lng,lnh;
double lnya,lnyb,lnyc,lnyd,lnye,lnyf,lnyg,lnyh,lnx;
double log(double x);
printf("\n\nY1 = ");
scanf("%f",&a);
printf("Y2 = ");
scanf("%f",&b);
printf("Y3 = ");
scanf("%f",&c);
printf("Y4 = ");
scanf("%f",&d);
printf("Y5 = ");
scanf("%f",&e);
printf("Y6 = ");
scanf("%f",&f);
printf("Y7 = ");
scanf("%f",&g);
printf("Y8 = ");
scanf("%f",&h);
A=(X1+X2+X3+X4+X5+X6+X7+X8)/8;
B=(a+b+c+d+e+f+g+h)/8;
lna = log(X1);
lnb = log(X2);
lnc = log(X3);
lnd = log(X4);
lne = log(X5);
lnf = log(X6);
lng = log(X7);
lnh = log(X8);
lnx=(lna+lnb+lnc+lnd+lne+lnf+lng+lnh)/8;
difa=log(X1)-lnx;
difa=log(X1)-lnx;
difb=log(X1)-lnx;
difc=log(X3)-lnx;
difd=log(X4)-lnx;
dife=log(X5)-lnx;
diff=log(X6)-lnx;
difg=log(X7)-lnx;
difh=log(X8)-lnx;
diya=a-B;
diyb=b-B;
diyc=c-B;
diyd=d-B;
diye=e-B;
diyf=f-B;
diyg=g-B;
diyh=h-B;
proda=difa*diya;
prodb=difb*diyb;
prodc=difc*diyc;
prodd=difd*diyd;
prode=dife*diye;
prodf=diff*diyf;
prodg=difg*diyg;
prodh=difh*diyh;
cuaxra=pow(difa,2);
cuaxrb=pow(difb,2);
cuaxrc=pow(difc,2);
cuaxrd=pow(difd,2);
cuaxre=pow(dife,2);
cuaxrf=pow(diff,2);
cuaxrg=pow(difg,2);
cuaxrh=pow(difh,2);
cuayra=diya*diya;
cuayrb=diyb*diyb;
cuayrc=diyc*diyc;
cuayrd=diyd*diyd;
cuayre=diye*diye;
cuayrf=diyf*diyf;
cuayrg=diyg*diyg;
cuayrh=diyh*diyh;
Sxy=(proda+prodb+prodc+prodd+prode+prodf+prodg+prodh
);
Sxx=(cuaxra+cuaxrb+cuaxrc+cuaxrd+cuaxre+cuaxrf+cuaxr
g+cuaxrh);
Syy=(cuayra+cuayrb+cuayrc+cuayrd+cuayre+cuayrf+cuayr
g+cuayrh);
Bx=(Sxy/Sxx);
printf("%f",Bx);
By=B-(Bx*lnx);
r=Sxy/pow(Sxx*Syy,0.5);
R=pow(r,2);
}
Regresin Logartmica
#include<cstdio> de 9 puntos
#include<cmath>
int main (){
float X1,X2,X3,X4,X5,X6,X7,X8,X9;
float a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p;
float A,B;
float
difX,difa,difb,difc,difd,dife,diff,difg,difh,difi;
float
diY,diya,diyb,diyc,diyd,diye,diyf,diyg,diyh,diyi;
float
proda,prodb,prodc,prodd,prode,prodf,prodg,prodh,prodi;
float
cuaxra,cuaxrb,cuaxrc,cuaxrd,cuaxre,cuaxrf,cuaxrg,cuaxrh,
cuaxri;
float
cuayra,cuayrb,cuayrc,cuayrd,cuayre,cuayrf,cuayrg,cuayrh,
cuayri;
float Sxy,Sxx,Syy,Bx,By,R,r;
double numero,lna,lnb,lnc,lnd,lne,lnf,lng,lnh,lni;
double
lnya,lnyb,lnyc,lnyd,lnye,lnyf,lnyg,lnyh,lnyi,lnx;
double log(double x);
printf("\n\nY1 = ");
scanf("%f",&a);
printf("Y2 = ");
scanf("%f",&b);
printf("Y3 = ");
scanf("%f",&c);
printf("Y4 = ");
scanf("%f",&d);
printf("Y5 = ");
scanf("%f",&e);
printf("Y6 = ");
scanf("%f",&f);
printf("Y7 = ");
scanf("%f",&g);
printf("Y8 = ");
scanf("%f",&h);
printf("Y9 = ");
scanf("%f",&i);
A=(X1+X2+X3+X4+X5+X6+X7+X8+X9)/9;
B=(a+b+c+d+e+f+g+h+i)/9;
lna = log(X1);
lnb = log(X2);
lnc = log(X3);
lnd = log(X4);
lne = log(X5);
lnf = log(X6);
lng = log(X7);
lnh = log(X8);
lni = log(X9);
lnx=(lna+lnb+lnc+lnd+lne+lnf+lng+lnh+lni)/9;
difa=log(X1)-lnx;
difa=log(X1)-lnx;
difb=log(X1)-lnx;
difc=log(X3)-lnx;
difd=log(X4)-lnx;
dife=log(X5)-lnx;
diff=log(X6)-lnx;
difg=log(X7)-lnx;
difh=log(X8)-lnx;
difi=log(X9)-lnx;
diya=a-B;
diyb=b-B;
diyc=c-B;
diyd=d-B;
diye=e-B;
diyf=f-B;
diyg=g-B;
diyh=h-B;
diyi=i-B;
proda=difa*diya;
prodb=difb*diyb;
prodc=difc*diyc;
prodd=difd*diyd;
prode=dife*diye;
prodf=diff*diyf;
prodg=difg*diyg;
prodh=difh*diyh;
prodi=difi*diyi;
cuaxra=pow(difa,2);
cuaxrb=pow(difb,2);
cuaxrc=pow(difc,2);
cuaxrd=pow(difd,2);
cuaxre=pow(dife,2);
cuaxrf=pow(diff,2);
cuaxrg=pow(difg,2);
cuaxrh=pow(difh,2);
cuaxri=pow(difi,2);
cuayra=diya*diya;
cuayrb=diyb*diyb;
cuayrc=diyc*diyc;
cuayrd=diyd*diyd;
cuayre=diye*diye;
cuayrf=diyf*diyf;
cuayrg=diyg*diyg;
cuayrh=diyh*diyh;
cuayri=diyi*diyi;
Sxy=(proda+prodb+prodc+prodd+prode+prodf+prodg+prodh
+prodi);
Sxx=(cuaxra+cuaxrb+cuaxrc+cuaxrd+cuaxre+cuaxrf+cuaxr
g+cuaxrh+cuaxri);
Syy=(cuayra+cuayrb+cuayrc+cuayrd+cuayre+cuayrf+cuayr
g+cuayrh+cuayri);
printf("\n\n sumX sumY Ln(X) Sxy
Sxx Syy");
printf("\n\n%f %f %f %f %.7f %f",A,B,lnx,Sxy,Sxx,Syy);
Bx=(Sxy/Sxx);
printf("%f",Bx);
By=B-(Bx*lnx);
r=Sxy/pow(Sxx*Syy,0.5);
R=pow(r,2);
}
Regresin Potencial
#include<cstdio> de 5 puntos
#include<cmath>
int main (){
float X1,X2,X3,X4,X5;
float a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p;
float A,B;
float difX,difa,difb,difc,difd,dife;
float diY,diya,diyb,diyc,diyd,diye;
float proda,prodb,prodc,prodd,prode;
float cuaxra,cuaxrb,cuaxrc,cuaxrd,cuaxre;
float cuayra,cuayrb,cuayrc,cuayrd,cuayre;
float Sxy,Sxx,Syy,Bx,By,R,r;
double numero,loxa,loxb,loxc,loxd,loxe;
double loya,loyb,loyc,loyd,loye,lnx,lny;
printf("\n\nY1 = ");
scanf("%f",&a);
printf("Y2 = ");
scanf("%f",&b);
printf("Y3 = ");
scanf("%f",&c);
printf("Y4 = ");
scanf("%f",&d);
printf("Y5 = ");
scanf("%f",&e);
A=(X1+X2+X3+X4+X5)/5;
B=(a+b+c+d+e)/5;
loxa = log10(X1);
loxb = log10(X2);
loxc = log10(X3);
loxd = log10(X4);
loxe = log10(X5);
loya = log10(a);
loyb = log10(b);
loyc = log10(c);
loyd = log10(d);
loye = log10(e);
lnx=(loxa+loxb+loxc+loxd+loxe)/5;
lny=(loya+loyb+loyc+loyd+loye)/5;
difa=log10(X1)-lnx;
difb=log10(X2)-lnx;
difc=log10(X3)-lnx;
difd=log10(X4)-lnx;
dife=log10(X5)-lnx;
diya=log10(a)-lny;
diyb=log10(b)-lny;
diyc=log10(c)-lny;
diyd=log10(d)-lny;
diye=log10(e)-lny;
proda=difa*diya;
prodb=difb*diyb;
prodc=difc*diyc;
prodd=difd*diyd;
prode=dife*diye;
cuaxra=pow(difa,2);
cuaxrb=pow(difb,2);
cuaxrc=pow(difc,2);
cuaxrd=pow(difd,2);
cuaxre=pow(dife,2);
cuayra=pow(diya,2);
cuayrb=pow(diyb,2);
cuayrc=pow(diyc,2);
cuayrd=pow(diyd,2);
cuayre=pow(diye,2);
Sxy=(proda+prodb+prodc+prodd+prode);
Sxx=(cuaxra+cuaxrb+cuaxrc+cuaxrd+cuaxre);
Syy=(cuayra+cuayrb+cuayrc+cuayrd+cuayre);
lnx=(loxa+loxb+loxc+loxd+loxe)/6;
lny=(loya+loyb+loyc+loyd+loye)/6;
Bx=(Sxy/Sxx);
By=pow(10,lny-Bx*lnx);
r=Sxy/pow(Sxx*Syy,0.5);
R=pow(r,2);
}
Regresin Potencial
#include<cstdio> de 6 puntos
#include<cmath>
int main (){
float X1,X2,X3,X4,X5,X6;
float a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p;
float A,B;
float difX,difa,difb,difc,difd,dife,diff;
float diY,diya,diyb,diyc,diyd,diye,diyf;
float proda,prodb,prodc,prodd,prode,prodf;
float cuaxra,cuaxrb,cuaxrc,cuaxrd,cuaxre,cuaxrf;
float cuayra,cuayrb,cuayrc,cuayrd,cuayre,cuayrf;
float Sxy,Sxx,Syy,Bx,By,R,r;
double numero,loxa,loxb,loxc,loxd,loxe,loxf;
double loya,loyb,loyc,loyd,loye,loyf,lnx,lny;
printf("\n\nY1 = ");
scanf("%f",&a);
printf("Y2 = ");
scanf("%f",&b);
printf("Y3 = ");
scanf("%f",&c);
printf("Y4 = ");
scanf("%f",&d);
printf("Y5 = ");
scanf("%f",&e);
printf("Y6 = ");
scanf("%f",&f);
A=(X1+X2+X3+X4+X5+X6)/6;
B=(a+b+c+d+e+f)/6;
loxa = log10(X1);
loxb = log10(X2);
loxc = log10(X3);
loxd = log10(X4);
loxe = log10(X5);
loxf = log10(X6);
loya = log10(a);
loyb = log10(b);
loyc = log10(c);
loyd = log10(d);
loye = log10(e);
loyf = log10(f);
lnx=(loxa+loxb+loxc+loxd+loxe+loxf)/6;
lny=(loya+loyb+loyc+loyd+loye+loyf)/6;
difa=log10(X1)-lnx;
difb=log10(X2)-lnx;
difc=log10(X3)-lnx;
difd=log10(X4)-lnx;
dife=log10(X5)-lnx;
diff=log10(X6)-lnx;
diya=log10(a)-lny;
diyb=log10(b)-lny;
diyc=log10(c)-lny;
diyd=log10(d)-lny;
diye=log10(e)-lny;
diyf=log10(f)-lny;
proda=difa*diya;
prodb=difb*diyb;
prodc=difc*diyc;
prodd=difd*diyd;
prode=dife*diye;
prodf=diff*diyf;
cuaxra=pow(difa,2);
cuaxrb=pow(difb,2);
cuaxrc=pow(difc,2);
cuaxrd=pow(difd,2);
cuaxre=pow(dife,2);
cuaxrf=pow(diff,2);
cuayra=pow(diya,2);
cuayrb=pow(diyb,2);
cuayrc=pow(diyc,2);
cuayrd=pow(diyd,2);
cuayre=pow(diye,2);
cuayrf=pow(diyf,2);
printf(" X Y log(X) log(y) (X-X1) (Y-Y1)
(X-X1)*(Y-Y1) (X-X1)^2 (Y-Y1)^2 ");
Sxy=(proda+prodb+prodc+prodd+prode+prodf);
Sxx=(cuaxra+cuaxrb+cuaxrc+cuaxrd+cuaxre+cuaxrf);
Syy=(cuayra+cuayrb+cuayrc+cuayrd+cuayre+cuayrf);
lnx=(loxa+loxb+loxc+loxd+loxe+loxf)/6;
lny=(loya+loyb+loyc+loyd+loye+loyf)/6;
Bx=(Sxy/Sxx);
By=pow(10,lny-Bx*lnx);
r=Sxy/pow(Sxx*Syy,0.5);
R=pow(r,2);
}
Regresin Potencial
#include<cstdio> de 7 puntos
#include<cmath>
int main (){
float X1,X2,X3,X4,X5,X6,X7;
float a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p;
float A,B;
float difX,difa,difb,difc,difd,dife,diff,difg;
float diY,diya,diyb,diyc,diyd,diye,diyf,diyg;
float proda,prodb,prodc,prodd,prode,prodf,prodg;
float
cuaxra,cuaxrb,cuaxrc,cuaxrd,cuaxre,cuaxrf,cuaxrg;
float
cuayra,cuayrb,cuayrc,cuayrd,cuayre,cuayrf,cuayrg;
float Sxy,Sxx,Syy,Bx,By,R,r;
double numero,loxa,loxb,loxc,loxd,loxe,loxf,loxg;
double loya,loyb,loyc,loyd,loye,loyf,loyg,lnx,lny;
A=(X1+X2+X3+X4+X5+X6+X7)/7;
B=(a+b+c+d+e+f+g)/7;
loxa = log10(X1);
loxb = log10(X2);
loxc = log10(X3);
loxd = log10(X4);
loxe = log10(X5);
loxf = log10(X6);
loxg = log10(X7);
loya = log10(a);
loyb = log10(b);
loyc = log10(c);
loyd = log10(d);
loye = log10(e);
loyf = log10(f);
loyg = log10(g);
lnx=(loxa+loxb+loxc+loxd+loxe+loxf+loxg)/7;
lny=(loya+loyb+loyc+loyd+loye+loyf+loyg)/7;
difa=log10(X1)-lnx;
difb=log10(X2)-lnx;
difc=log10(X3)-lnx;
difd=log10(X4)-lnx;
dife=log10(X5)-lnx;
diff=log10(X6)-lnx;
difg=log10(X7)-lnx;
diya=log10(a)-lny;
diyb=log10(b)-lny;
diyc=log10(c)-lny;
diyd=log10(d)-lny;
diye=log10(e)-lny;
diyf=log10(f)-lny;
diyg=log10(g)-lny;
proda=difa*diya;
prodb=difb*diyb;
prodc=difc*diyc;
prodd=difd*diyd;
prode=dife*diye;
prodf=diff*diyf;
prodg=difg*diyg;
cuaxra=pow(difa,2);
cuaxrb=pow(difb,2);
cuaxrc=pow(difc,2);
cuaxrd=pow(difd,2);
cuaxre=pow(dife,2);
cuaxrf=pow(diff,2);
cuaxrg=pow(difg,2);
cuayra=pow(diya,2);
cuayrb=pow(diyb,2);
cuayrc=pow(diyc,2);
cuayrd=pow(diyd,2);
cuayre=pow(diye,2);
cuayrf=pow(diyf,2);
cuayrg=pow(diyg,2);
Sxy=(proda+prodb+prodc+prodd+prode+prodf+prodg);
Sxx=(cuaxra+cuaxrb+cuaxrc+cuaxrd+cuaxre+cuaxrf+cuaxr
g);
Syy=(cuayra+cuayrb+cuayrc+cuayrd+cuayre+cuayrf+cuayr
g);
lnx=(loxa+loxb+loxc+loxd+loxe+loxf+loxg)/7;
lny=(loya+loyb+loyc+loyd+loye+loyf+loyg)/7;
Bx=(Sxy/Sxx);
By=pow(10,lny-Bx*lnx);
r=Sxy/pow(Sxx*Syy,0.5);
R=pow(r,2);
}
Regresin Potencial
#include<cstdio> de 8 puntos
#include<cmath>
int main (){
float X1,X2,X3,X4,X5,X6,X7,X8;
float a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p;
float A,B;
float difX,difa,difb,difc,difd,dife,diff,difg,difh;
float diY,diya,diyb,diyc,diyd,diye,diyf,diyg,diyh;
float
proda,prodb,prodc,prodd,prode,prodf,prodg,prodh;
float
cuaxra,cuaxrb,cuaxrc,cuaxrd,cuaxre,cuaxrf,cuaxrg,cuaxrh;
float
cuayra,cuayrb,cuayrc,cuayrd,cuayre,cuayrf,cuayrg,cuayrh;
float Sxy,Sxx,Syy,Bx,By,R,r;
double
numero,loxa,loxb,loxc,loxd,loxe,loxf,loxg,loxh;
double
loya,loyb,loyc,loyd,loye,loyf,loyg,loyh,lnx,lny;
printf("\n\nY1 = ");
scanf("%f",&a);
printf("Y2 = ");
scanf("%f",&b);
printf("Y3 = ");
scanf("%f",&c);
printf("Y4 = ");
scanf("%f",&d);
printf("Y5 = ");
scanf("%f",&e);
printf("Y6 = ");
scanf("%f",&f);
printf("Y7 = ");
scanf("%f",&g);
printf("Y8 = ");
scanf("%f",&h);
A=(X1+X2+X3+X4+X5+X6+X7+X8)/8;
B=(a+b+c+d+e+f+g+h)/8;
loxa = log10(X1);
loxb = log10(X2);
loxc = log10(X3);
loxd = log10(X4);
loxe = log10(X5);
loxf = log10(X6);
loxg = log10(X7);
loxh = log10(X8);
loya = log10(a);
loyb = log10(b);
loyc = log10(c);
loyd = log10(d);
loye = log10(e);
loyf = log10(f);
loyg = log10(g);
loyh = log10(h);
lnx=(loxa+loxb+loxc+loxd+loxe+loxf+loxg+loxh)/8;
lny=(loya+loyb+loyc+loyd+loye+loyf+loyg+loyh)/8;
difa=log10(X1)-lnx;
difb=log10(X2)-lnx;
difc=log10(X3)-lnx;
difd=log10(X4)-lnx;
dife=log10(X5)-lnx;
diff=log10(X6)-lnx;
difg=log10(X7)-lnx;
difh=log10(X8)-lnx;
diya=log10(a)-lny;
diyb=log10(b)-lny;
diyc=log10(c)-lny;
diyd=log10(d)-lny;
diye=log10(e)-lny;
diyf=log10(f)-lny;
diyg=log10(g)-lny;
diyh=log10(h)-lny;
proda=difa*diya;
prodb=difb*diyb;
prodc=difc*diyc;
prodd=difd*diyd;
prode=dife*diye;
prodf=diff*diyf;
prodg=difg*diyg;
prodh=difh*diyh;
cuaxra=pow(difa,2);
cuaxrb=pow(difb,2);
cuaxrc=pow(difc,2);
cuaxrd=pow(difd,2);
cuaxre=pow(dife,2);
cuaxrf=pow(diff,2);
cuaxrg=pow(difg,2);
cuaxrh=pow(difh,2);
cuayra=pow(diya,2);
cuayrb=pow(diyb,2);
cuayrc=pow(diyc,2);
cuayrd=pow(diyd,2);
cuayre=pow(diye,2);
cuayrf=pow(diyf,2);
cuayrg=pow(diyg,2);
cuayrh=pow(diyh,2);
Sxy=(proda+prodb+prodc+prodd+prode+prodf+prodg+prodh
);
Sxx=(cuaxra+cuaxrb+cuaxrc+cuaxrd+cuaxre+cuaxrf+cuaxr
g+cuaxrh);
Syy=(cuayra+cuayrb+cuayrc+cuayrd+cuayre+cuayrf+cuayr
g+cuayrh);
lnx=(loxa+loxb+loxc+loxd+loxe+loxf+loxg+loxh)/8;
lny=(loya+loyb+loyc+loyd+loye+loyf+loyg+loyh)/8;
Bx=(Sxy/Sxx);
By=pow(10,lny-Bx*lnx);
printf("\n\nLA CURVA POTENCIAL : Y = %f * X^(%f) ",By,Bx);
r=Sxy/pow(Sxx*Syy,0.5);
R=pow(r,2);
}
Regresin Potencial
#include<cstdio> de 9 puntos
#include<cmath>
int main (){
float X1,X2,X3,X4,X5,X6,X7,X8,X9;
float a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p;
float A,B;
float
difX,difa,difb,difc,difd,dife,diff,difg,difh,difi;
float
diY,diya,diyb,diyc,diyd,diye,diyf,diyg,diyh,diyi;
float
proda,prodb,prodc,prodd,prode,prodf,prodg,prodh,prodi;
float
cuaxra,cuaxrb,cuaxrc,cuaxrd,cuaxre,cuaxrf,cuaxrg,cuaxrh,
cuaxri;
float
cuayra,cuayrb,cuayrc,cuayrd,cuayre,cuayrf,cuayrg,cuayrh,
cuayri;
float Sxy,Sxx,Syy,Bx,By,R,r;
double
numero,loxa,loxb,loxc,loxd,loxe,loxf,loxg,loxh,loxi;
double
loya,loyb,loyc,loyd,loye,loyf,loyg,loyh,loyi,lnx,lny;
printf("\n\nY1 = ");
scanf("%f",&a);
printf("Y2 = ");
scanf("%f",&b);
printf("Y3 = ");
scanf("%f",&c);
printf("Y4 = ");
scanf("%f",&d);
printf("Y5 = ");
scanf("%f",&e);
printf("Y6 = ");
scanf("%f",&f);
printf("Y7 = ");
scanf("%f",&g);
printf("Y8 = ");
scanf("%f",&h);
printf("Y9 = ");
scanf("%f",&i);
A=(X1+X2+X3+X4+X5+X6+X7+X8+X9)/9;
B=(a+b+c+d+e+f+g+h+i)/9;
loxa = log10(X1);
loxb = log10(X2);
loxc = log10(X3);
loxd = log10(X4);
loxe = log10(X5);
loxf = log10(X6);
loxg = log10(X7);
loxh = log10(X8);
loxi = log10(X9);
loya = log10(a);
loyb = log10(b);
loyc = log10(c);
loyd = log10(d);
loye = log10(e);
loyf = log10(f);
loyg = log10(g);
loyh = log10(h);
loyi = log10(i);
lnx=(loxa+loxb+loxc+loxd+loxe+loxf+loxg+loxh+loxi)/9
;
lny=(loya+loyb+loyc+loyd+loye+loyf+loyg+loyh+loyi)/9
;
difa=log10(X1)-lnx;
difb=log10(X2)-lnx;
difc=log10(X3)-lnx;
difd=log10(X4)-lnx;
dife=log10(X5)-lnx;
diff=log10(X6)-lnx;
difg=log10(X7)-lnx;
difh=log10(X8)-lnx;
difi=log10(X9)-lnx;
diya=log10(a)-lny;
diyb=log10(b)-lny;
diyc=log10(c)-lny;
diyd=log10(d)-lny;
diye=log10(e)-lny;
diyf=log10(f)-lny;
diyg=log10(g)-lny;
diyh=log10(h)-lny;
diyi=log10(i)-lny;
proda=difa*diya;
prodb=difb*diyb;
prodc=difc*diyc;
prodd=difd*diyd;
prode=dife*diye;
prodf=diff*diyf;
prodg=difg*diyg;
prodh=difh*diyh;
prodi=difi*diyi;
cuaxra=pow(difa,2);
cuaxrb=pow(difb,2);
cuaxrc=pow(difc,2);
cuaxrd=pow(difd,2);
cuaxre=pow(dife,2);
cuaxrf=pow(diff,2);
cuaxrg=pow(difg,2);
cuaxrh=pow(difh,2);
cuaxri=pow(difi,2);
cuayra=pow(diya,2);
cuayrb=pow(diyb,2);
cuayrc=pow(diyc,2);
cuayrd=pow(diyd,2);
cuayre=pow(diye,2);
cuayrf=pow(diyf,2);
cuayrg=pow(diyg,2);
cuayrh=pow(diyh,2);
cuayri=pow(diyi,2);
Sxy=(proda+prodb+prodc+prodd+prode+prodf+prodg+prodh
+prodi);
Sxx=(cuaxra+cuaxrb+cuaxrc+cuaxrd+cuaxre+cuaxrf+cuaxr
g+cuaxrh+cuaxri);
Syy=(cuayra+cuayrb+cuayrc+cuayrd+cuayre+cuayrf+cuayr
g+cuayrh+cuayri);
lnx=(loxa+loxb+loxc+loxd+loxe+loxf+loxg+loxh+loxi)/9
;
lny=(loya+loyb+loyc+loyd+loye+loyf+loyg+loyh+loyi)/9
;
Bx=(Sxy/Sxx);
By=pow(10,lny-Bx*lnx);
r=Sxy/pow(Sxx*Syy,0.5);
R=pow(r,2);
printf("\n\nY1 = ");
scanf("%f",&a);
printf("Y2 = ");
scanf("%f",&b);
printf("Y3 = ");
scanf("%f",&c);
printf("Y4 = ");
scanf("%f",&d);
printf("Y5 = ");
scanf("%f",&e);
printf("Y6 = ");
scanf("%f",&f);
printf("Y7 = ");
scanf("%f",&g);
printf("Y8 = ");
scanf("%f",&h);
printf("Y9 = ");
scanf("%f",&i);
A=(X1+X2+X3+X4+X5+X6+X7+X8+X9)/9;
B=(a+b+c+d+e+f+g+h+i)/9;
lna = log(a);
lnb = log(b);
lnc = log(c);
lnd = log(d);
lne = log(e);
lnf = log(f);
lng = log(g);
lnh = log(h);
lni = log(i);
lnx=(lna+lnb+lnc+lnd+lne+lnf+lng+lnh+lni)/9;
difa=X1-A;
difb=X2-A;
difc=X3-A;
difd=X4-A;
dife=X5-A;
diff=X6-A;
difg=X7-A;
difh=X8-A;
difi=X9-A;
diya=log(a)-lnx;
diyb=log(b)-lnx;
diyc=log(c)-lnx;
diyd=log(d)-lnx;
diye=log(e)-lnx;
diyf=log(f)-lnx;
diyg=log(g)-lnx;
diyh=log(h)-lnx;
diyi=log(i)-lnx;
proda=diya*difa;
prodb=diyb*difb;
prodc=diyc*difc;
prodd=diyd*difd;
prode=diye*dife;
prodf=diyf*diff;
prodg=diyg*difg;
prodh=diyh*difh;
prodi=diyi*difi;
cuaxra=pow(difa,2);
cuaxrb=pow(difb,2);
cuaxrc=pow(difc,2);
cuaxrd=pow(difd,2);
cuaxre=pow(dife,2);
cuaxrf=pow(diff,2);
cuaxrg=pow(difg,2);
cuaxrh=pow(difh,2);
cuaxri=pow(difi,2);
cuayra=pow(diya,2);
cuayrb=pow(diyb,2);
cuayrc=pow(diyc,2);
cuayrd=pow(diyd,2);
cuayre=pow(diye,2);
cuayrf=pow(diyf,2);
cuayrg=pow(diyg,2);
cuayrh=pow(diyh,2);
cuayri=pow(diyi,2);
Sxy=(proda+prodb+prodc+prodd+prode+prodf+prodg+prodh
+prodi);
Sxx=(cuayra+cuayrb+cuayrc+cuayrd+cuayre+cuayrf+cuayr
g+cuayrh+cuayri);
Syy=(cuaxra+cuaxrb+cuaxrc+cuaxrd+cuaxre+cuaxrf+cuaxr
g+cuaxrh+cuaxri);
Bx=(Sxy/Sxx);
By=pow(2.7182,B-(Bx*A));
}
Regresin Exponencial
#include<cstdio> de 5 puntos
#include<cmath>
int main (){
float X1,X2,X3,X4,X5;
float a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p;
float A,B;
float difX,difa,difb,difc,difd,dife;
float diY,diya,diyb,diyc,diyd,diye;
float proda,prodb,prodc,prodd,prode;
float cuaxra,cuaxrb,cuaxrc,cuaxrd,cuaxre;
float cuayra,cuayrb,cuayrc,cuayrd,cuayre;
float Sxy,Sxx,Syy,Bx,By,Bz,R,r;
double numero,lna,lnb,lnc,lnd,lne;
double lnya,lnyb,lnyc,lnyd,lnye,lnx;
double log(double x);
printf("\n\nY1 = ");
scanf("%f",&a);
printf("Y2 = ");
scanf("%f",&b);
printf("Y3 = ");
scanf("%f",&c);
printf("Y4 = ");
scanf("%f",&d);
printf("Y5 = ");
scanf("%f",&e);
A=(X1+X2+X3+X4+X5)/5;
B=(a+b+c+d+e)/5;
lna = log(a);
lnb = log(b);
lnc = log(c);
lnd = log(d);
lne = log(e);
lnx=(lna+lnb+lnc+lnd+lne)/5;
difa=X1-A;
difb=X2-A;
difc=X3-A;
difd=X4-A;
dife=X5-A;
diya=log(a)-lnx;
diyb=log(b)-lnx;
diyc=log(c)-lnx;
diyd=log(d)-lnx;
diye=log(e)-lnx;
proda=diya*difa;
prodb=diyb*difb;
prodc=diyc*difc;
prodd=diyd*difd;
prode=diye*dife;
cuaxra=pow(difa,2);
cuaxrb=pow(difb,2);
cuaxrc=pow(difc,2);
cuaxrd=pow(difd,2);
cuaxre=pow(dife,2);
cuayra=pow(diya,2);
cuayrb=pow(diyb,2);
cuayrc=pow(diyc,2);
cuayrd=pow(diyd,2);
cuayre=pow(diye,2);
Bx=(Sxy/Sxx);
By=pow(2.7182,B-(Bx*A));
r=Sxy/pow(Sxx*Syy,0.5);
R=pow(r,2);
}
Regresin Exponencial
#include<cstdio> de 6 puntos
#include<cmath>
int main (){
float X1,X2,X3,X4,X5,X6;
float a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p;
float A,B;
float difX,difa,difb,difc,difd,dife,diff;
float diY,diya,diyb,diyc,diyd,diye,diyf;
float proda,prodb,prodc,prodd,prode,prodf;
float cuaxra,cuaxrb,cuaxrc,cuaxrd,cuaxre,cuaxrf;
float cuayra,cuayrb,cuayrc,cuayrd,cuayre,cuayrf;
float Sxy,Sxx,Syy,Bx,By,Bz,R,r;
double numero,lna,lnb,lnc,lnd,lne,lnf;
double lnya,lnyb,lnyc,lnyd,lnye,lnyf,lnx;
double log(double x);
printf("\n\nY1 = ");
scanf("%f",&a);
printf("Y2 = ");
scanf("%f",&b);
printf("Y3 = ");
scanf("%f",&c);
printf("Y4 = ");
scanf("%f",&d);
printf("Y5 = ");
scanf("%f",&e);
printf("Y6 = ");
scanf("%f",&f);
A=(X1+X2+X3+X4+X5+X6)/6;
B=(a+b+c+d+e+f)/6;
lna = log(a);
lnb = log(b);
lnc = log(c);
lnd = log(d);
lne = log(e);
lnf = log(f);
lnx=(lna+lnb+lnc+lnd+lne+lnf)/6;
difa=X1-A;
difb=X2-A;
difc=X3-A;
difd=X4-A;
dife=X5-A;
diff=X6-A;
diya=log(a)-lnx;
diyb=log(b)-lnx;
diyc=log(c)-lnx;
diyd=log(d)-lnx;
diye=log(e)-lnx;
diyf=log(f)-lnx;
proda=diya*difa;
prodb=diyb*difb;
prodc=diyc*difc;
prodd=diyd*difd;
prode=diye*dife;
prodf=diyf*diff;
cuaxra=pow(difa,2);
cuaxrb=pow(difb,2);
cuaxrc=pow(difc,2);
cuaxrd=pow(difd,2);
cuaxre=pow(dife,2);
cuaxrf=pow(diff,2);
cuayra=pow(diya,2);
cuayrb=pow(diyb,2);
cuayrc=pow(diyc,2);
cuayrd=pow(diyd,2);
cuayre=pow(diye,2);
cuayrf=pow(diyf,2);
Sxy=(proda+prodb+prodc+prodd+prode+prodf);
Sxx=(cuayra+cuayrb+cuayrc+cuayrd+cuayre+cuayrf);
Syy=(cuaxra+cuaxrb+cuaxrc+cuaxrd+cuaxre+cuaxrf);
Bx=(Sxy/Sxx);
By=pow(2.7182,B-(Bx*A));
r=Sxy/pow(Sxx*Syy,0.5);
R=pow(r,2);
}
Regresin Exponencial
#include<cstdio> de 7 puntos
#include<cmath>
int main (){
float X1,X2,X3,X4,X5,X6,X7;
float a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p;
float A,B;
float difX,difa,difb,difc,difd,dife,diff,difg;
float diY,diya,diyb,diyc,diyd,diye,diyf,diyg;
float proda,prodb,prodc,prodd,prode,prodf,prodg;
float
cuaxra,cuaxrb,cuaxrc,cuaxrd,cuaxre,cuaxrf,cuaxrg;
float
cuayra,cuayrb,cuayrc,cuayrd,cuayre,cuayrf,cuayrg;
float Sxy,Sxx,Syy,Bx,By,Bz,R,r;
double numero,lna,lnb,lnc,lnd,lne,lnf,lng;
double lnya,lnyb,lnyc,lnyd,lnye,lnyf,lnyg,lnx;
double log(double x);
A=(X1+X2+X3+X4+X5+X6+X7)/7;
B=(a+b+c+d+e+f+g)/7;
lna = log(a);
lnb = log(b);
lnc = log(c);
lnd = log(d);
lne = log(e);
lnf = log(f);
lng = log(g);
lnx=(lna+lnb+lnc+lnd+lne+lnf+lng)/7;
difa=X1-A;
difb=X2-A;
difc=X3-A;
difd=X4-A;
dife=X5-A;
diff=X6-A;
difg=X7-A;
diya=log(a)-lnx;
diyb=log(b)-lnx;
diyc=log(c)-lnx;
diyd=log(d)-lnx;
diye=log(e)-lnx;
diyf=log(f)-lnx;
diyg=log(g)-lnx;
proda=diya*difa;
prodb=diyb*difb;
prodc=diyc*difc;
prodd=diyd*difd;
prode=diye*dife;
prodf=diyf*diff;
prodg=diyg*difg;
cuaxra=pow(difa,2);
cuaxrb=pow(difb,2);
cuaxrc=pow(difc,2);
cuaxrd=pow(difd,2);
cuaxre=pow(dife,2);
cuaxrf=pow(diff,2);
cuaxrg=pow(difg,2);
cuayra=pow(diya,2);
cuayrb=pow(diyb,2);
cuayrc=pow(diyc,2);
cuayrd=pow(diyd,2);
cuayre=pow(diye,2);
cuayrf=pow(diyf,2);
cuayrg=pow(diyg,2);
Sxy=(proda+prodb+prodc+prodd+prode+prodf+prodg);
Sxx=(cuayra+cuayrb+cuayrc+cuayrd+cuayre+cuayrf+cuayr
g);
Syy=(cuaxra+cuaxrb+cuaxrc+cuaxrd+cuaxre+cuaxrf+cuaxr
g);
r=Sxy/pow(Sxx*Syy,0.5);
R=pow(r,2);
}
Regresin Exponencial
#include<cstdio> de 8 puntos
#include<cmath>
int main (){
float X1,X2,X3,X4,X5,X6,X7,X8;
float a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p;
float A,B;
float difX,difa,difb,difc,difd,dife,diff,difg,difh;
float diY,diya,diyb,diyc,diyd,diye,diyf,diyg,diyh;
float
proda,prodb,prodc,prodd,prode,prodf,prodg,prodh;
float
cuaxra,cuaxrb,cuaxrc,cuaxrd,cuaxre,cuaxrf,cuaxrg,cuaxrh;
float
cuayra,cuayrb,cuayrc,cuayrd,cuayre,cuayrf,cuayrg,cuayrh;
float Sxy,Sxx,Syy,Bx,By,Bz,R,r;
double numero,lna,lnb,lnc,lnd,lne,lnf,lng,lnh;
double lnya,lnyb,lnyc,lnyd,lnye,lnyf,lnyg,lnyh,lnx;
double log(double x);
printf("\n\nY1 = ");
scanf("%f",&a);
printf("Y2 = ");
scanf("%f",&b);
printf("Y3 = ");
scanf("%f",&c);
printf("Y4 = ");
scanf("%f",&d);
printf("Y5 = ");
scanf("%f",&e);
printf("Y6 = ");
scanf("%f",&f);
printf("Y7 = ");
scanf("%f",&g);
printf("Y8 = ");
scanf("%f",&h);
A=(X1+X2+X3+X4+X5+X6+X7+X8)/8;
B=(a+b+c+d+e+f+g+h)/8;
lna = log(a);
lnb = log(b);
lnc = log(c);
lnd = log(d);
lne = log(e);
lnf = log(f);
lng = log(g);
lnh = log(h);
lnx=(lna+lnb+lnc+lnd+lne+lnf+lng+lnh)/8;
difa=X1-A;
difb=X2-A;
difc=X3-A;
difd=X4-A;
dife=X5-A;
diff=X6-A;
difg=X7-A;
difh=X8-A;
diya=log(a)-lnx;
diyb=log(b)-lnx;
diyc=log(c)-lnx;
diyd=log(d)-lnx;
diye=log(e)-lnx;
diyf=log(f)-lnx;
diyg=log(g)-lnx;
diyh=log(h)-lnx;
proda=diya*difa;
prodb=diyb*difb;
prodc=diyc*difc;
prodd=diyd*difd;
prode=diye*dife;
prodf=diyf*diff;
prodg=diyg*difg;
prodh=diyh*difh;
cuaxra=pow(difa,2);
cuaxrb=pow(difb,2);
cuaxrc=pow(difc,2);
cuaxrd=pow(difd,2);
cuaxre=pow(dife,2);
cuaxrf=pow(diff,2);
cuaxrg=pow(difg,2);
cuaxrh=pow(difh,2);
cuayra=pow(diya,2);
cuayrb=pow(diyb,2);
cuayrc=pow(diyc,2);
cuayrd=pow(diyd,2);
cuayre=pow(diye,2);
cuayrf=pow(diyf,2);
cuayrg=pow(diyg,2);
cuayrh=pow(diyh,2);
Sxy=(proda+prodb+prodc+prodd+prode+prodf+prodg+prodh
);
Sxx=(cuayra+cuayrb+cuayrc+cuayrd+cuayre+cuayrf+cuayr
g+cuayrh);
Syy=(cuaxra+cuaxrb+cuaxrc+cuaxrd+cuaxre+cuaxrf+cuaxr
g+cuaxrh);
Bx=(Sxy/Sxx);
By=pow(2.7182,B-(Bx*A));
r=Sxy/pow(Sxx*Syy,0.5);
R=pow(r,2);
}
4 DIFERENCIACION NUMERICA
CODIFICACION EN HP
PRIME: Diferenciacin
numrica
Progresiva
Centrada
Regresiva
UNH - Ing. Civil Huancavelica
EXPORT DIF_NUMERICA()
BEGIN
LOCAL FUNC,X0,h;
LOCAL F0,F1,F2,F3,F4;
LOCAL F_1,F_2,F_3,F_4;
LOCAL x1,x2,x3,x4,x_1,x_2,x_3,x_4;
LOCAL PD1,PD2,SD1,SD2,TD1,TD2,CD;
LOCAL P1,P11,P111;
LOCAL P2,P22,P222;
LOCAL C1,C11,C111;
LOCAL C2,C22,C222;
LOCAL R1,R11,R111;
LOCAL R2,R22,R222;
LOCAL df;
LOCAL Vreal;
LOCAL RESULT;
LOCAL e1,e2,e3,e4,e5,e6;
LOCAL e7,e8,e9,e10,e11,e12;
LOCAL e13,e14,e15,e16,e17,e18;
INPUT({{FUNC,[8],{50,20,1}},{X0,[0],{50,20,2}},{h,[0],{50,20,3}},{C,{"PROGRE
SIVA","CENTRADA","REGRESIVA","COMPARACION"},{50,20,4}}},"DIFEREN
CIACION NUMERICA",{"FUNC : ","X0: ","h:","TIPO :"},{"Ingrese la
funcion","Ingrese el punto donde se desea evaluar","Ingrese el espaciamiento","Elija el
tipo de dif. finita"});
x1:=X0+h;
x2:=X0+2*h;
x3:=X0+3*h;
x4:=X0+4*h;
x_1:=X0-h;
x_2:=X0-2*h;
x_3:=X0-3*h;
x_4:=X0-4*h;
X:=X0;
F0:=EVAL(FUNC);
X:=x1;
F1:=EVAL(FUNC);
X:=x2;
F2:=EVAL(FUNC);
X:=x3;
F3:=EVAL(FUNC);
X:=x4;
F4:=EVAL(FUNC);
UNH - Ing. Civil Huancavelica
X:=x_1;
F_1:=EVAL(FUNC);
X:=x_2;
F_2:=EVAL(FUNC);
X:=x_3;
F_3:=EVAL(FUNC);
X:=x_4;
F_4:=EVAL(FUNC);
X:=X0;
df:=diff(FUNC,X);
Vreal:= EVAL(df);
PRINT();
PRINT("El valor de F(x0) = "+F0);
PRINT("El valor de F(x0+h) = "+F1);
PRINT("El valor de F(x0+2h) = "+F2);
PRINT("El valor de F(x0+3h) = "+F3);
PRINT("El valor de F(x0+4h) = "+F4);
PRINT("El valor de F(x0-h) = "+F_1);
PRINT("El valor de F(x0-2h) = "+F_2);
PRINT("El valor de F(x0-3h) = "+F_3);
PRINT("El valor de F(x0-4h) = "+F_4);
PRINT("El valo real del error Vreal= "+Vreal);
wait(-1);
PD2:=(-3*F0+4*F1-F2)/(2*h);
e2:= ((Vreal-PD2)/Vreal)*100;
////2da
SD1:=(F0-2*F1+F2)/(h*h);
e3:= ((Vreal-SD1)/Vreal)*100;
SD2:=(2*F0-5*F1+4*F2-F3)/(h*h);
e4:= ((Vreal-SD2)/Vreal)*100;
////3ra
TD1:=(-F0+3*F1-3*F2+F3)/(h^3);
e5:= ((Vreal-TD1)/Vreal)*100;
TD2:=(-5*F0+18*F1-24*F2+14*F3-3*F4)/(2*h^3);
e6:= ((Vreal-TD2)/Vreal)*100;
UNH - Ing. Civil Huancavelica
print();
PRINT("La 1RA der de 2puntos es:"+PD1);
PRINT("Su error es:"+e1);
PRINT("La 1RA der de 3puntos es:"+PD2);
PRINT("Su error es:"+e2);
print("------------------------");
PRINT("La 2DA der de 2puntos:"+SD1);
PRINT("Su error es:"+e3);
PRINT("La 2DA der de 3puntos:"+SD2);
PRINT("Su error es:"+e4);
print("------------------------");
PRINT("La 3RA der de 2puntos es:"+TD1);
PRINT("Su error es:"+e5);
PRINT("La 3RA der de 3puntos es:"+TD2);
PRINT("Su error es:"+e6);
wait(-1);
END;
PD2:=(F_2-8*F_1+8*F1-F2)/(12*h);
e2:= ((Vreal-PD2)/Vreal)*100;
////2da
SD1:=(F_1-2*F0+F1)/(h*h);
e3:= ((Vreal-SD1)/Vreal)*100;
SD2:=(-F_2+16*F_1-30*F0+16*F1-F2)/(12*h*h);
e4:= ((Vreal-SD2)/Vreal)*100;
////3ra
TD1:=(-F_2+2*F_1-2*F1+F2)/(2*h^3);
e5:= ((Vreal-TD1)/Vreal)*100;
TD2:=(F_3-8*F_2+13*F_1-13*F1+8*F2-F3)/(8*h^3);
e6:= ((Vreal-TD2)/Vreal)*100;
print();
PRINT("La 1RA der de 3puntos es:"+PD1);
PRINT("Su error es:"+e1);
PRINT("La 1RA der de 5puntos es:"+PD2);
PRINT("Su error es:"+e2);
print("------------------------");
PRINT("La 2DA der de 3puntos:"+SD1);
PRINT("Su error es:"+e3);
PRINT("La 2DA der de 5puntos:"+SD2);
PRINT("Su error es:"+e4);
print("------------------------");
PRINT("La 3RA der de 3puntos es:"+TD1);
PRINT("Su error es:"+e5);
UNH - Ing. Civil Huancavelica
PD2:=(F_2-4*F_1+3*F0)/(2*h);
e2:= ((Vreal-PD2)/Vreal)*100;
////2da
SD1:=(F_2-2*F_1+F0)/(h*h);
e3:= ((Vreal-SD1)/Vreal)*100;
SD2:=(-F_3+4*F_2-5*F_1+2*F0)/(h*h);
e4:= ((Vreal-SD2)/Vreal)*100;
////3ra
TD1:=(-F_3+3*F_2-3*F_1+F0)/(h^3);
e5:= ((Vreal-TD1)/Vreal)*100;
TD2:=(3*F_4-14*F_3+24*F_2-18*F_1+5*F0)/(2*h^3);
e6:= ((Vreal-TD2)/Vreal)*100;
print();
PRINT("La 1RA der de 2puntos es:"+PD1);
PRINT("Su error es:"+e1);
PRINT("La 1RA der de 3puntos es:"+PD2);
PRINT("Su error es:"+e2);
print("------------------------");
PRINT("La 2DA der de 2puntos:"+SD1);
PRINT("Su error es:"+e3);
PRINT("La 2DA der de 3puntos:"+SD2);
PRINT("Su error es:"+e4);
print("------------------------");
PRINT("La 3RA der de 2puntos es:"+TD1);
PRINT("Su error es:"+e5);
PRINT("La 3RA der de 3puntos es:"+TD2);
PRINT("Su error es:"+e6);
wait(-1);
END;
IF C==4 THEN
P1:=(F1-F0)/(h);
e1:= ((Vreal-P1)/(Vreal))*100;
C1:=(F1-F_1)/(2*h);
e2:= ((Vreal-C1)/(Vreal))*100;
UNH - Ing. Civil Huancavelica
R1:=(F0-F_1)/(h);
e3:= ((Vreal-R1)/(Vreal))*100;
P2:=(-3*F0+4*F1-F2)/(2*h);
e4:= ((Vreal-P2)/Vreal)*100;
C2:=(F_2-8*F_1+8*F1-F2)/(12*h);
e5:= ((Vreal-C2)/(Vreal))*100;
R2:=(F_2-4*F_1+3*F0)/(2*h);
e6:= ((Vreal-R2)/(Vreal))*100;
P11:=(F0-2*F1+F2)/(h*h);
e7:= ((Vreal-P11)/(Vreal))*100;
C11:=(F_1-2*F0+F1)/(h*h);
e8:= ((Vreal-C11)/(Vreal))*100;
R11:=(F_2-2*F_1+F0)/(h*h);
e9:= ((Vreal-R11)/(Vreal))*100;
P22:=(2*F0-5*F1+4*F2-F3)/(h*h);
e10:= ((Vreal-P22)/(Vreal))*100;
C22:=(-F_2+16*F_1-30*F0+16*F1-F2)/(12*h*h);
e11:= ((Vreal-C22)/(Vreal))*100;
R22:=(-F_3+4*F_2-5*F_1+2*F0)/(h*h);
e12:= ((Vreal-R22)/(Vreal))*100;
P111:=(-F0+3*F1-3*F2+F3)/(h^3);
e13:= ((Vreal-P111)/(Vreal))*100;
C111:=(-F_2+2*F_1-2*F1+F2)/(2*h^3);
e14:= ((Vreal-C111)/(Vreal))*100;
R111:=(-F_3+3*F_2-3*F_1+F0)/(h^3);
e15:= ((Vreal-R111)/(Vreal))*100;
P222:=(-5*F0+18*F1-24*F2+14*F3-3*F4)/(2*h^3);
e16:= ((Vreal-P222)/(Vreal))*100;
C222:=(F_3-8*F_2+13*F_1-13*F1+8*F2-F3)/(8*h^3);
e17:= ((Vreal-C222)/(Vreal))*100;
R222:=(3*F_4-14*F_3+24*F_2-18*F_1+5*F0)/(2*h^3);
e18:= ((Vreal-R222)/(Vreal))*100;
UNH - Ing. Civil Huancavelica
print();
print("***************************************");
print("PRIMER GRUPO");
print("***************************************");
PRINT("1RA der progresiva de 2Pes:"+P1);
PRINT("Su error es:"+e1);
print("---------------------------------");
PRINT("1RA der centrada de 3P es :"+C1);
PRINT("Su error es:"+e2);
print("---------------------------------");
PRINT("1RA der regresiva de 2P es :"+R1);
PRINT("Su error es:"+e3);
print("*****************************************");
PRINT("2DA der progresiva de 2P es:"+P11);
PRINT("Su error es:"+e7);
print("----------------------------------");
PRINT("2DA der centrada de 3P es :"+C11);
PRINT("Su error es:"+e8);
print("----------------------------------");
PRINT("2DA der regresiva de 2P es :"+R11);
PRINT("Su error es:"+e9);
print("*****************************************");
PRINT("3DA der progresiva de 2P es:"+P111);
PRINT("Su error es:"+e13);
print("-----------------------------------");
PRINT("3DA der centrada de 3P es :"+C111);
PRINT("Su error es:"+e14);
print("------------------------------------");
PRINT("3DA der regresiva de 2P es :"+R111);
PRINT("Su error es:"+e15);
print("*****************************************");
print("SEGUNDO GRUPO");
print("*****************************************");
PRINT("1RA der progresiva de 3Pes:"+P2);
PRINT("Su error es:"+e4);
print("--------------------------------------");
PRINT("1RA der centrada de 5P es :"+C2);
PRINT("Su error es:"+e5);
print("--------------------------------------");
PRINT("1RA der regresiva de 3P es :"+R2);
PRINT("Su error es:"+e6);
print("*******************************************");
PRINT("2DA der progresiva de 3P es:"+P22);
PRINT("Su error es:"+e10);
print("---------------------------------------");
PRINT("2DA der centrada de 5P es :"+C22);
PRINT("Su error es:"+e11);
print("---------------------------------------");
PRINT("2DA der regresiva de 3P es :"+R22);
UNH - Ing. Civil Huancavelica
BREAK;
END;
END;
5 INTEGRACION NUMERICA
CODIFICACION EN HP
PRIME: INTEGRACION
NUMERICA
Simpson
Trapecio
UNH - Ing. Civil Huancavelica
EXPORT INTEGRACION_NUM()
BEGIN
LOCAL MENU;
REPEAT
CHOOSE(MENU," INTEGRACIN NUMERICA ",". Mtodo de Simpson",".
Mtodo del Trapecio",". SALIR");
IF MENU==1 THEN
LOCAL FX;
LOCAL a,b,k,n,i;
LOCAL S,h;
LOCAL fx;
LOCAL suma2,fa,fb,F;
INPUT({{FX,[8],{50,20,1}},{a,[0],{50,20,2}},{b,[0],{50,20,3}},{n,[0],{50,20,4}},{C,
{"simpson 1/3","simpson 3/8"},{50,20,5}}},"METODO SIMPSON",{"FUNC : ","a:
","b:","n:","Tipo:"},{"Ingrese la funcion","Extremo inferior","Extremo
superior","Numero de diviones ingresa Nro PAR","Ingrese el tipo de simpson"});
h:=(b-a)/n;
suma2:=0;
/////////////////////SIMPSON 1/3
IF C==1 THEN
print();
PRINT("El valor de h =(b-a)/2 es:"+h);
FOR i FROM 1 TO n-1 DO
X:=a+h*i;
fx:=EVAL(FX);
IF i == i*2 THEN
F:=2*fx;
ELSE
F:=4*fx;
END;
suma2:=suma2+F;
PRINT("****************************");
print("El valor de X es:"+X);
PRINT("El valor de FX es:"+fx);
END;
X:=a;
fa:=EVAL(FX);
X:=b;
fb:=EVAL(FX);
S:=(h/3)*(fa+suma2+fb);
PRINT("****************************");
UNH - Ing. Civil Huancavelica
///////////////////////////////SIMPSON 3/8
IF C==2 THEN
print();
PRINT("El valor de h =(b-a)/2 es:"+h);
FOR i FROM 1 TO n-1 DO
X:=a+h*i;
fx:=EVAL(FX);
F:=3*fx;
suma2:=suma2+F;
PRINT("****************************");
print("El valor de X es:"+X);
PRINT("El valor de FX es:"+fx);
END;
X:=a;
fa:=EVAL(FX);
X:=b;
fb:=EVAL(FX);
S:=((3*h)/8)*(fa+suma2+fb);
PRINT("****************************");
print("EL valor de X0 es:"+a);
PRINT("El valor de FX0 es:"+fa);
print("EL valor de Xn es:"+b);
PRINT("El valor de FXn es:"+fb);
PRINT("****************************");
print("El valor del AREA es :"+S);
PRINT("****************************");
PRINT("El valor de suma de 2f1+2f2+2f3 n-1 funciones:"+suma2);
WAIT(-5);
END;
ELSE
///////////////////////////////TRAPECIO
IF MENU==2 THEN
LOCAL FX;
UNH - Ing. Civil Huancavelica
LOCAL a,b,k,n,i;
LOCAL S,h;
LOCAL fx;
LOCAL suma2,suma4,fa,fb,F;
INPUT({{FX,[8],{50,20,1}},{a,[0],{50,20,2}},{b,[0],{50,20,3}},{n,[0],{50,20,4}}},"
METODO DEL TRAPECIO",{"FUNC : ","a: ","b:","n:"},{"Ingrese la
funcion","Extremo inferior","Extremo superior","Numero de diviones ingresa Nro
PAR"});
h:=(b-a)/n;
suma2:=0;
print();
PRINT("El valor de h =(b-a)/2 es:"+h);
FOR i FROM 1 TO n-1 DO
X:=a+h*i;
fx:=EVAL(FX);
F:=2*fx;
suma2:=suma2+F;
PRINT("****************************");
print("El valor de X es:"+X);
PRINT("El valor de FX es:"+fx);
END;
X:=a;
fa:=EVAL(FX);
X:=b;
fb:=EVAL(FX);
S:=(h/2)*(fa+suma2+fb);
PRINT("****************************");
print("EL valor de X0 es:"+a);
PRINT("El valor de FX0 es:"+fa);
PRINT("****************************");
print("EL valor de Xn es:"+b);
PRINT("El valor de FXn es:"+fb);
PRINT("****************************");
print("El valor del AREA es :"+S);
PRINT("****************************");
PRINT("El valor de suma de 2f1+2f2+2f3 n-1 funciones:"+suma2);
WAIT(-1);
END;
END;
UNTIL MENU==3;
MSGBOX("GRACIAS POR UTILIZAR EL PROGRAMA");
END;