Sunteți pe pagina 1din 138

"AO DEL BUEN SEVICIO AL CIUDADANO

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

CATEDRATICO: ING. VARGAS CRISPIN, Samuel

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.

Huancavelica, julio de 2017


ndice general

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

4 DIFERENCIACION NUMERICA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125

5 INTEGRACION NUMERICA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134


1 INTRODUCCION

AGETHRNHFDBSRHT
METODO DE NEWTON (DIFERENCIAS DIVIDI-
DAS)
INTERPOLACION LINEAL
Interpolacin cuadrtica
Forma general de los polinomios de inter-
polacin de Newton

2 INTERPOLACIN

2.1 METODO DE NEWTON (DIFERENCIAS DIVIDIDAS)


Uno de estas formas de interpolacin se denomina Polinomios de Interpolacin de Newton, que
trabaja directamente en la tabla obtenida mediante el proceso de Diferencias Divididas.

2.1.1 INTERPOLACION LINEAL


La forma ms simple de interpolar es la de conectar dos puntos con una lnea recta. Este mtodo,
llamado interpolacin lineal, se muestra en la figura:

Usando tringulos semejantes, se tiene:

f (x) f (x0 ) f (x1 ) f (x0 )


xx0 = x1 x0
Que se puede reordenar como:
2.1 METODO DE NEWTON (DIFERENCIAS DIVIDIDAS) 7
f (x1 ) f (x0 )
f (x1 ) = f (x0 ) + x1 x0 (x x0 )
La cual es una frmula de interpolacin lineal. La notacin f1(X) indica que se trata de un
polinomio de interpolacin de primer orden. Ntese que adems de representar la pendiente de la
lnea que conecta los dos puntos, el termino

f (x1 ) f (x0 )
x1 x0

Es una aproximacin de diferencias divididas finitas a la primera derivada. En general, entre


ms pequeo sea el intervalo entre dos puntos, ms exacta ser la aproximacin.

2.1.2 Interpolacin cuadrtica


Una estrategia que mejora la aproximacin es la introducir cierta curvatura en la lnea que
conecta a los puntos. Si se dispone de tres datos, lo anterior se puede llevar a cabo con un polinomio
de segundo orden (llamado tambin polinomio cuadrtico o parbola). Una manera conveniente
para este caso es:

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

Ntese que, al igual que en el caso de interpolacin lineal, b1 an representa la pendiente


de la lnea que une los puntos x0 yx1 . Por lo tanto, los primeros dos trminos de la ecuacin son
equivalentes a la interpolacin de x0 ax1 . El ltimo trmino b2 (x x0 )(x x1 ), introduce la curvatura
de segundo orden de la frmula.
8 INTERPOLACIN

2.1.3 Forma general de los polinomios de interpolacin de Newton


Sea F una funcin de valor real definida sobre xk , xk+1 , xk+2 , ..., xk+n no necesariamente equidis-
tante. Se define:

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)

De forma similar, la n-sima diferencia dividida finita es:

f (xn ,xn1 ,...,x1 ) f (xn1 ,xn2 ,...,x0 )


f [xn , xn1 , ..., x1 , x0 ] = xn x0

Estas diferencias sirven para evaluar y obtener el polinomio de interpolacin


fn (x) = f (x0 )+(xx0 ) f [x1 , x0 ]+(xx0 )(xx1 ) f [x2 , x1 , x0 ]+?+(xx0 )(xxn1 ) f [xn , xn1 , ?, x0 ]
El cual se conoce como polinomio de interpolacin de Newton en diferencias divididas.
CODIFICACION EN HP
PRIME:
Diferencias divididas
UNH - Ing. Civil Huancavelica

EXPORT dca(m)
BEGIN

LOCAL k,n,mat_ini,comp;

mat_ini:=MAKEMAT(-1000000,rowDim(m),rowDim(m)+1);

FOR k FROM 1 TO rowDim(m) DO


mat_ini(k,1):=m(k,1);
mat_ini(k,2):=m(k,2);
END;

//para f(x1)-f(x0)

FOR n FROM 1 TO rowDim(m)-1 DO


FOR k FROM 1 TO rowDim(m)-n DO
mat_ini(k,n+2):=(mat_ini(k+1,n+1)-mat_ini(k,n+1))/(m(n+k,1)-m(k,1));
END;
END;

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.

3.1 Regresin lineal


Consiste en ajustar a una lnea recta un conjunto de parejas de datos observados: (X1 ,Y1 ), (X2 ,Y2 ), ???, (Xn ,Yn )
y para ello utilizaremos el mtodo de mnimos cuadrados. La expresin matemtica de la funcin
lineal es g(x) = a0 + a1 x donde a0 ya1 son constantes a determinar. La desviacin de la recta con res-
pecto a cada dato se define como: di = yi ?g(xi ) y como g(xi ) = a0 + a1 xi . Entonces di = yi ?a0 ?a1 xi
donde i = 1, 2???, n siendo ?n? el nmero de datos. El cuadrado total de las desviaciones para
obtener un buen ajuste est dado por: D = ni=1 (di )2 = ni=1 (yi a0 ai xi )2 Cuando este valor
es mnimo puede determinar el valor de las constantes a0 ya1 y hacer mnimo a D. Seguidamente
se deriva la anterior ecuacin con respecto a cada uno de los coeficientes y se igualan a cero.
Considerando que ni=1 a0 = na0 , entonces la anterior ecuacin se puede expresar como un conjunto
de 2 ecuaciones lineales con 2 incgnitas : na0 + a1 xi = yi
a0 x0 + a1 xi2 = xi yi Al expresar estas dos ecuaciones en forma matricial tenemos:
    
n xi a0 yi
=
xi xi2 a1 xi yi
Que se resuelven por los mtodos conocidos (gauss ? seidel), y se obtiene los coeficientes a0 ya1 :
n xi yi xi yi
a1 = n xi2 ( xi )2 0
a = y a1 x

donde x y y son medias de x, y respectivamente. Despus reemplazamos, y as logramos, mediante


el ajuste de mnimos cuadrados, obtener nuestra ecuacin lineal.

3.2 Regresin no lineal


La regresin lineal ofrece una poderosa tcnica para ajustar una mejor lnea a los datos. Sin
embargo, se considera el hecho de que la relacin entre las variables dependientes e independientes
es lineal. Este no es siempre el caso, y el primer paso en cualquier anlisis de regresin deber ser
12 REGRESIONES

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

Mediante una transformacin lineal, tomando logaritmos neperianos, se convierte el problema


en una cuestin de regresin lineal.

ln(y) = a1 x + ln(a0 )
Seguidamente se obtiene los valores de a1 y a0 con el mismo procedimiento de la mnimos cuadra-
dos.

3.2.1 Regresin logartmica


La curva logartmica Y = a0 + a1 ln(x) es tambin una recta, pero en lugar de estar referida a
las variables x e y , estn est referidas a lnxyx. Seguidamente se obtiene los valores de a1 y a0 con
el mismo procedimiento de la mnimos cuadrados.

3.2.2 Regresin potencial


Se obtiene a partir de la curva potencial:

y = a0 xa1
Luego se linealiza tomando logaritmos:

log(y) = log(a0 ) + a1 log(x)


y se aplica el procedimiento de mnimos cuadrados.

3.2.3 Regresin Exponencial


Se obtiene a partir de la siguiente forma
y = a0 ax1
Luego se lineal iza y se aplica del procedimiento de mnimos cuadrados.

3.2.4 Regresin Inversa


Se obtiene a partir de la siguiente forma

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 = a0 sen(a1 x + c) + d Luego se lineal iza y se aplica del procedimiento de mnimos cuadrados.

3.2.5 Regresin Mediana


Se obtiene a partir de la siguiente forma

y = a1 x + a0

Luego se lineal iza y se aplica del procedimiento de mnimos cuadrados.

3.3 Regresin Lineal Mltiple


Una extensin til en la regresin lineal es el caso en que y es una funcin lineal de dos o ms
variables. Por ejemplo, y pudiera ser una funcin lineal de x1 yx2 , de la forma:

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:

na0 + a1 a1 + a2 x2 = yi xi a0 + x1 2a1 + x1 x2 a2 = x1 y1 x2 a0 + x1 x2 a1 + x22 a2 =


x2 y1
O como una matriz:

3.4 Regresin Polinomial


El mtodo de mnimos cuadrados puede extenderse para ajustar un polinomio de cualquier
valor a los datos de una medicin.

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

Al igualar estas ecuaciones a cero y reordenando, se tiene el siguiente conjunto de ecuaciones:

a0 n + a1 xi + a2 xi2 + ....... + an xin = yi a0 xi + a1 xi2 + a2 x23 + ....... + an xin+1 =


xi yi a0 xi2 + a1 xi3 + a2 xi4 + ....... + an xin+2 =
xi yi a0 xin + a1 xin+1 + a2 xin+2 + ....... + an xi2 m = xin yi
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;

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_LNx:={};
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+(LN(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_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("digite los valores de X : ");


printf("\nX1 = ");
scanf("%f",&X1);
printf("X2 = ");
scanf("%f",&X2);
printf("X3 = ");
scanf("%f",&X3);
printf("X4 = ");
scanf("%f",&X4);
printf("X5 = ");
scanf("%f",&X5);
printf("X6 = ");
scanf("%f",&X6);
printf("X7 = ");
scanf("%f",&X7);
printf("X8 = ");
scanf("%f",&X8);
printf("X9 = ");
scanf("%f",&X9);

printf("\ndigite los valores de Y : ");

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;

printf(" X Y X-X1 Y-Y1 (X-X1)*(Y-Y1)


(X-X1)^2 (Y-Y1)^2 ");

printf("\n%.4f %.4f %.4f %.4f %.4f %.4f


%.4f" ,X1,a,difa,diya,proda,cuaxra,cuayra);
printf("\n%.4f %.4f %.4f %.4f %.4f %.4f
%.4f" ,X2,b,difb,diyb,prodb,cuaxrb,cuayrb);
printf("\n%.4f %.4f %.4f %.4f %.4f %.4f
%.4f" ,X3,c,difc,diyc,prodc,cuaxrc,cuayrc);
printf("\n%.4f %.4f %.4f %.4f %.4f %.4f
%.4f" ,X4,d,difd,diyd,prodd,cuaxrd,cuayrd);
printf("\n%.4f %.4f %.4f %.4f %.4f %.4f
%.4f" ,X5,e,dife,diye,prode,cuaxre,cuayre);
printf("\n%.4f %.4f %.4f %.4f %.4f %.4f
%.4f" ,X6,f,diff,diyf,prodf,cuaxrf,cuayrf);
printf("\n%.4f %.4f %.4f %.4f %.4f %.4f
%.4f" ,X7,g,difg,diyg,prodg,cuaxrg,cuayrg);
printf("\n%.4f %.4f %.4f %.4f %.4f %.4f
%.4f" ,X8,h,difh,diyh,prodh,cuaxrh,cuayrh);
printf("\n%.4f %.4f %.4f %.4f %.4f %.4f
%.4f" ,X9,i,difi,diyi,prodi,cuaxri,cuayri);
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 Sxy Sxx


Syy");
printf("\n\n%f %f %f %.7f %f",A,B,Sxy,Sxx,Syy);

Bx=Sxy/Sxx;
By=B-(Bx*A);

printf("\n\nla RECTA DE LA REGRESION LINEAL : Y = %f + %f*X


",By,Bx);

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("digite los valores de X : ");


printf("\nX1 = ");
scanf("%f",&X1);
printf("X2 = ");
scanf("%f",&X2);
printf("X3 = ");
scanf("%f",&X3);
printf("X4 = ");
scanf("%f",&X4);
printf("X5 = ");
scanf("%f",&X5);

printf("\ndigite los valores de Y : ");

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;

printf(" X Y X-X1 Y-Y1 (X-X1)*(Y-Y1)


(X-X1)^2 (Y-Y1)^2 ");

printf("\n%.4f %.4f %.4f %.4f %.4f %.4f


%.4f" ,X1,a,difa,diya,proda,cuaxra,cuayra);
printf("\n%.4f %.4f %.4f %.4f %.4f %.4f
%.4f" ,X2,b,difb,diyb,prodb,cuaxrb,cuayrb);
printf("\n%.4f %.4f %.4f %.4f %.4f %.4f
%.4f" ,X3,c,difc,diyc,prodc,cuaxrc,cuayrc);
printf("\n%.4f %.4f %.4f %.4f %.4f %.4f
%.4f" ,X4,d,difd,diyd,prodd,cuaxrd,cuayrd);
printf("\n%.4f %.4f %.4f %.4f %.4f %.4f
%.4f" ,X5,e,dife,diye,prode,cuaxre,cuayre);

Sxy=(proda+prodb+prodc+prodd+prode);
Sxx=(cuaxra+cuaxrb+cuaxrc+cuaxrd+cuaxre);
Syy=(cuayra+cuayrb+cuayrc+cuayrd+cuayre);

printf("\n\n sumX sumY Sxy Sxx


Syy");
printf("\n\n%f %f %f %.7f %f",A,B,Sxy,Sxx,Syy);

Bx=Sxy/Sxx;
By=B-(Bx*A);

printf("\n\nla RECTA DE LA REGRESION LINEAL : Y = %f + %f*X


",By,Bx);
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 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("digite los valores de X : ");


printf("\nX1 = ");
scanf("%f",&X1);
printf("X2 = ");
scanf("%f",&X2);
printf("X3 = ");
scanf("%f",&X3);
printf("X4 = ");
scanf("%f",&X4);
printf("X5 = ");
scanf("%f",&X5);
printf("X6 = ");
scanf("%f",&X6);

printf("\ndigite los valores de Y : ");

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;

printf(" X Y X-X1 Y-Y1 (X-X1)*(Y-Y1)


(X-X1)^2 (Y-Y1)^2 ");

printf("\n%.4f %.4f %.4f %.4f %.4f %.4f


%.4f" ,X1,a,difa,diya,proda,cuaxra,cuayra);
printf("\n%.4f %.4f %.4f %.4f %.4f %.4f
%.4f" ,X2,b,difb,diyb,prodb,cuaxrb,cuayrb);
printf("\n%.4f %.4f %.4f %.4f %.4f %.4f
%.4f" ,X3,c,difc,diyc,prodc,cuaxrc,cuayrc);
printf("\n%.4f %.4f %.4f %.4f %.4f %.4f
%.4f" ,X4,d,difd,diyd,prodd,cuaxrd,cuayrd);
printf("\n%.4f %.4f %.4f %.4f %.4f %.4f
%.4f" ,X5,e,dife,diye,prode,cuaxre,cuayre);
printf("\n%.4f %.4f %.4f %.4f %.4f %.4f
%.4f" ,X6,f,diff,diyf,prodf,cuaxrf,cuayrf);
Sxy=(proda+prodb+prodc+prodd+prode+prodf);
Sxx=(cuaxra+cuaxrb+cuaxrc+cuaxrd+cuaxre+cuaxrf);
Syy=(cuayra+cuayrb+cuayrc+cuayrd+cuayre+cuayrf);

printf("\n\n sumX sumY Sxy Sxx


Syy");
printf("\n\n%f %f %f %.7f %f",A,B,Sxy,Sxx,Syy);

Bx=Sxy/Sxx;
By=B-(Bx*A);

printf("\n\nla RECTA DE LA REGRESION LINEAL : Y = %f + %f*X


",By,Bx);

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("digite los valores de X : ");


printf("\nX1 = ");
scanf("%f",&X1);
printf("X2 = ");
scanf("%f",&X2);
printf("X3 = ");
scanf("%f",&X3);
printf("X4 = ");
scanf("%f",&X4);
printf("X5 = ");
scanf("%f",&X5);
printf("X6 = ");
scanf("%f",&X6);
printf("X7 = ");
scanf("%f",&X7);

printf("\ndigite los valores de Y : ");

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;

printf(" X Y X-X1 Y-Y1 (X-X1)*(Y-Y1)


(X-X1)^2 (Y-Y1)^2 ");

printf("\n%.4f %.4f %.4f %.4f %.4f %.4f


%.4f" ,X1,a,difa,diya,proda,cuaxra,cuayra);
printf("\n%.4f %.4f %.4f %.4f %.4f %.4f
%.4f" ,X2,b,difb,diyb,prodb,cuaxrb,cuayrb);
printf("\n%.4f %.4f %.4f %.4f %.4f %.4f
%.4f" ,X3,c,difc,diyc,prodc,cuaxrc,cuayrc);
printf("\n%.4f %.4f %.4f %.4f %.4f %.4f
%.4f" ,X4,d,difd,diyd,prodd,cuaxrd,cuayrd);
printf("\n%.4f %.4f %.4f %.4f %.4f %.4f
%.4f" ,X5,e,dife,diye,prode,cuaxre,cuayre);
printf("\n%.4f %.4f %.4f %.4f %.4f %.4f
%.4f" ,X6,f,diff,diyf,prodf,cuaxrf,cuayrf);
printf("\n%.4f %.4f %.4f %.4f %.4f %.4f
%.4f" ,X7,g,difg,diyg,prodg,cuaxrg,cuayrg);

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);

printf("\n\n sumX sumY Sxy Sxx


Syy");
printf("\n\n%f %f %f %.7f %f",A,B,Sxy,Sxx,Syy);

Bx=Sxy/Sxx;
By=B-(Bx*A);

printf("\n\nla RECTA DE LA REGRESION LINEAL : Y = %f + %f*X


",By,Bx);

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;

printf("digite los valores de X : ");


printf("\nX1 = ");
scanf("%f",&X1);
printf("X2 = ");
scanf("%f",&X2);
printf("X3 = ");
scanf("%f",&X3);
printf("X4 = ");
scanf("%f",&X4);
printf("X5 = ");
scanf("%f",&X5);
printf("X6 = ");
scanf("%f",&X6);
printf("X7 = ");
scanf("%f",&X7);
printf("X8 = ");
scanf("%f",&X8);

printf("\ndigite los valores de Y : ");


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;

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 ");

printf("\n%.4f %.4f %.4f %.4f %.4f %.4f


%.4f" ,X1,a,difa,diya,proda,cuaxra,cuayra);
printf("\n%.4f %.4f %.4f %.4f %.4f %.4f
%.4f" ,X2,b,difb,diyb,prodb,cuaxrb,cuayrb);
printf("\n%.4f %.4f %.4f %.4f %.4f %.4f
%.4f" ,X3,c,difc,diyc,prodc,cuaxrc,cuayrc);
printf("\n%.4f %.4f %.4f %.4f %.4f %.4f
%.4f" ,X4,d,difd,diyd,prodd,cuaxrd,cuayrd);
printf("\n%.4f %.4f %.4f %.4f %.4f %.4f
%.4f" ,X5,e,dife,diye,prode,cuaxre,cuayre);
printf("\n%.4f %.4f %.4f %.4f %.4f %.4f
%.4f" ,X6,f,diff,diyf,prodf,cuaxrf,cuayrf);
printf("\n%.4f %.4f %.4f %.4f %.4f %.4f
%.4f" ,X7,g,difg,diyg,prodg,cuaxrg,cuayrg);
printf("\n%.4f %.4f %.4f %.4f %.4f %.4f
%.4f" ,X8,h,difh,diyh,prodh,cuaxrh,cuayrh);

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);

printf("\n\n sumX sumY Sxy Sxx


Syy");
printf("\n\n%f %f %f %.7f %f",A,B,Sxy,Sxx,Syy);

Bx=Sxy/Sxx;
By=B-(Bx*A);

printf("\n\nla RECTA DE LA REGRESION LINEAL : Y = %f + %f*X


",By,Bx);

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("digite los valores de X : ");


printf("\nX1 = ");
scanf("%f",&X1);
printf("X2 = ");
scanf("%f",&X2);
printf("X3 = ");
scanf("%f",&X3);
printf("X4 = ");
scanf("%f",&X4);
printf("X5 = ");
scanf("%f",&X5);

printf("\ndigite los valores de Y : ");

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;

printf(" X Y ln(X) (X-X1) (Y-Y1)


(X-X1)*(Y-Y1) (X-X1)^2 (Y-Y1)^2 ");

printf("\n%.4f %.4f %.4f %.4f %.4f %.4f


%.4f %.4f "
,X1,a,lna,difa,diya,proda,cuaxra,cuayra);
printf("\n%.4f %.4f %.4f %.4f %.4f %.4f
%.4f %.4f "
,X2,b,lnb,difb,diyb,prodb,cuaxrb,cuayrb);
printf("\n%.4f %.4f %.4f %.4f %.4f %.4f
%.4f %.4f "
,X3,c,lnc,difc,diyc,prodc,cuaxrc,cuayrc);
printf("\n%.4f %.4f %.4f %.4f %.4f %.4f
%.4f %.4f "
,X4,d,lnd,difd,diyd,prodd,cuaxrd,cuayrd);
printf("\n%.4f %.4f %.4f %.4f %.4f %.4f
%.4f %.4f "
,X5,e,lne,dife,diye,prode,cuaxre,cuayre);

Sxy=(proda+prodb+prodc+prodd+prode);
Sxx=(cuaxra+cuaxrb+cuaxrc+cuaxrd+cuaxre);
Syy=(cuayra+cuayrb+cuayrc+cuayrd+cuayre);

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);

printf("\n\nLA CURVA LOGARITMICA : Y = %f + %f*ln(X)


",By,Bx);

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 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("digite los valores de X : ");


printf("\nX1 = ");
scanf("%f",&X1);
printf("X2 = ");
scanf("%f",&X2);
printf("X3 = ");
scanf("%f",&X3);
printf("X4 = ");
scanf("%f",&X4);
printf("X5 = ");
scanf("%f",&X5);
printf("X6 = ");
scanf("%f",&X6);

printf("\ndigite los valores de Y : ");

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;

printf(" X Y ln(X) (X-X1) (Y-Y1)


(X-X1)*(Y-Y1) (X-X1)^2 (Y-Y1)^2 ");

printf("\n%.4f %.4f %.4f %.4f %.4f %.4f


%.4f %.4f "
,X1,a,lna,difa,diya,proda,cuaxra,cuayra);
printf("\n%.4f %.4f %.4f %.4f %.4f %.4f
%.4f %.4f "
,X2,b,lnb,difb,diyb,prodb,cuaxrb,cuayrb);
printf("\n%.4f %.4f %.4f %.4f %.4f %.4f
%.4f %.4f "
,X3,c,lnc,difc,diyc,prodc,cuaxrc,cuayrc);
printf("\n%.4f %.4f %.4f %.4f %.4f %.4f
%.4f %.4f "
,X4,d,lnd,difd,diyd,prodd,cuaxrd,cuayrd);
printf("\n%.4f %.4f %.4f %.4f %.4f %.4f
%.4f %.4f "
,X5,e,lne,dife,diye,prode,cuaxre,cuayre);
printf("\n%.4f %.4f %.4f %.4f %.4f %.4f
%.4f %.4f "
,X6,f,lnf,diff,diyf,prodf,cuaxrf,cuayrf);

Sxy=(proda+prodb+prodc+prodd+prode+prodf);
Sxx=(cuaxra+cuaxrb+cuaxrc+cuaxrd+cuaxre+cuaxrf);
Syy=(cuayra+cuayrb+cuayrc+cuayrd+cuayre+cuayrf);

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);

printf("\n\nLA CURVA LOGARITMICA : Y = %f + %f*ln(X)


",By,Bx);

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 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("digite los valores de X : ");


printf("\nX1 = ");
scanf("%f",&X1);
printf("X2 = ");
scanf("%f",&X2);
printf("X3 = ");
scanf("%f",&X3);
printf("X4 = ");
scanf("%f",&X4);
printf("X5 = ");
scanf("%f",&X5);
printf("X6 = ");
scanf("%f",&X6);
printf("X7 = ");
scanf("%f",&X7);
printf("\ndigite los valores de Y : ");

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;

printf(" X Y ln(X) (X-X1) (Y-Y1)


(X-X1)*(Y-Y1) (X-X1)^2 (Y-Y1)^2 ");

printf("\n%.4f %.4f %.4f %.4f %.4f %.4f


%.4f %.4f "
,X1,a,lna,difa,diya,proda,cuaxra,cuayra);
printf("\n%.4f %.4f %.4f %.4f %.4f %.4f
%.4f %.4f "
,X2,b,lnb,difb,diyb,prodb,cuaxrb,cuayrb);
printf("\n%.4f %.4f %.4f %.4f %.4f %.4f
%.4f %.4f "
,X3,c,lnc,difc,diyc,prodc,cuaxrc,cuayrc);
printf("\n%.4f %.4f %.4f %.4f %.4f %.4f
%.4f %.4f "
,X4,d,lnd,difd,diyd,prodd,cuaxrd,cuayrd);
printf("\n%.4f %.4f %.4f %.4f %.4f %.4f
%.4f %.4f "
,X5,e,lne,dife,diye,prode,cuaxre,cuayre);
printf("\n%.4f %.4f %.4f %.4f %.4f %.4f
%.4f %.4f "
,X6,f,lnf,diff,diyf,prodf,cuaxrf,cuayrf);
printf("\n%.4f %.4f %.4f %.4f %.4f %.4f
%.4f %.4f "
,X7,g,lng,difg,diyg,prodg,cuaxrg,cuayrg);
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);

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);

printf("\n\nLA CURVA LOGARITMICA : Y = %f + %f*ln(X)


",By,Bx);

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 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("digite los valores de X : ");


printf("\nX1 = ");
scanf("%f",&X1);
printf("X2 = ");
scanf("%f",&X2);
printf("X3 = ");
scanf("%f",&X3);
printf("X4 = ");
scanf("%f",&X4);
printf("X5 = ");
scanf("%f",&X5);
printf("X6 = ");
scanf("%f",&X6);
printf("X7 = ");
scanf("%f",&X7);
printf("X8 = ");
scanf("%f",&X8);

printf("\ndigite los valores de Y : ");

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;

printf(" X Y ln(X) (X-X1) (Y-Y1)


(X-X1)*(Y-Y1) (X-X1)^2 (Y-Y1)^2 ");

printf("\n%.4f %.4f %.4f %.4f %.4f %.4f


%.4f %.4f "
,X1,a,lna,difa,diya,proda,cuaxra,cuayra);
printf("\n%.4f %.4f %.4f %.4f %.4f %.4f
%.4f %.4f "
,X2,b,lnb,difb,diyb,prodb,cuaxrb,cuayrb);
printf("\n%.4f %.4f %.4f %.4f %.4f %.4f
%.4f %.4f "
,X3,c,lnc,difc,diyc,prodc,cuaxrc,cuayrc);
printf("\n%.4f %.4f %.4f %.4f %.4f %.4f
%.4f %.4f "
,X4,d,lnd,difd,diyd,prodd,cuaxrd,cuayrd);
printf("\n%.4f %.4f %.4f %.4f %.4f %.4f
%.4f %.4f "
,X5,e,lne,dife,diye,prode,cuaxre,cuayre);
printf("\n%.4f %.4f %.4f %.4f %.4f %.4f
%.4f %.4f "
,X6,f,lnf,diff,diyf,prodf,cuaxrf,cuayrf);
printf("\n%.4f %.4f %.4f %.4f %.4f %.4f
%.4f %.4f "
,X7,g,lng,difg,diyg,prodg,cuaxrg,cuayrg);
printf("\n%.4f %.4f %.4f %.4f %.4f %.4f
%.4f %.4f "
,X8,h,lnh,difh,diyh,prodh,cuaxrh,cuayrh);

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);

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);

printf("\n\nLA CURVA LOGARITMICA : Y = %f + %f*ln(X)


",By,Bx);

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 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("digite los valores de X : ");


printf("\nX1 = ");
scanf("%f",&X1);
printf("X2 = ");
scanf("%f",&X2);
printf("X3 = ");
scanf("%f",&X3);
printf("X4 = ");
scanf("%f",&X4);
printf("X5 = ");
scanf("%f",&X5);
printf("X6 = ");
scanf("%f",&X6);
printf("X7 = ");
scanf("%f",&X7);
printf("X8 = ");
scanf("%f",&X8);
printf("X9 = ");
scanf("%f",&X9);

printf("\ndigite los valores de Y : ");

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;

printf(" X Y ln(X) (X-X1) (Y-Y1)


(X-X1)*(Y-Y1) (X-X1)^2 (Y-Y1)^2 ");
printf("\n%.4f %.4f %.4f %.4f %.4f %.4f
%.4f %.4f "
,X1,a,lna,difa,diya,proda,cuaxra,cuayra);
printf("\n%.4f %.4f %.4f %.4f %.4f %.4f
%.4f %.4f "
,X2,b,lnb,difb,diyb,prodb,cuaxrb,cuayrb);
printf("\n%.4f %.4f %.4f %.4f %.4f %.4f
%.4f %.4f "
,X3,c,lnc,difc,diyc,prodc,cuaxrc,cuayrc);
printf("\n%.4f %.4f %.4f %.4f %.4f %.4f
%.4f %.4f "
,X4,d,lnd,difd,diyd,prodd,cuaxrd,cuayrd);
printf("\n%.4f %.4f %.4f %.4f %.4f %.4f
%.4f %.4f "
,X5,e,lne,dife,diye,prode,cuaxre,cuayre);
printf("\n%.4f %.4f %.4f %.4f %.4f %.4f
%.4f %.4f "
,X6,f,lnf,diff,diyf,prodf,cuaxrf,cuayrf);
printf("\n%.4f %.4f %.4f %.4f %.4f %.4f
%.4f %.4f "
,X7,g,lng,difg,diyg,prodg,cuaxrg,cuayrg);
printf("\n%.4f %.4f %.4f %.4f %.4f %.4f
%.4f %.4f "
,X8,h,lnh,difh,diyh,prodh,cuaxrh,cuayrh);
printf("\n%.4f %.4f %.4f %.4f %.4f %.4f
%.4f %.4f "
,X9,i,lni,difi,diyi,prodi,cuaxri,cuayri);

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);

printf("\n\nLA CURVA LOGARITMICA : Y = %f + %f*ln(X)


",By,Bx);

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 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("digite los valores de X : ");


printf("\nX1 = ");
scanf("%f",&X1);
printf("X2 = ");
scanf("%f",&X2);
printf("X3 = ");
scanf("%f",&X3);
printf("X4 = ");
scanf("%f",&X4);
printf("X5 = ");
scanf("%f",&X5);

printf("\ndigite los valores de Y : ");

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);

printf(" X Y log(X) log(y) (X-X1) (Y-Y1)


(X-X1)*(Y-Y1) (X-X1)^2 (Y-Y1)^2 ");

printf("\n%.4f %.4f %.4f %.4f %.4f %.4f %.4f


%.4f %.4f "
,X1,a,loxa,loya,difa,diya,proda,cuaxra,cuayra);
printf("\n%.4f %.4f %.4f %.4f %.4f %.4f %.4f
%.4f %.4f "
,X2,b,loxb,loyb,difb,diyb,prodb,cuaxrb,cuayrb);
printf("\n%.4f %.4f %.4f %.4f %.4f %.4f %.4f
%.4f %.4f "
,X3,c,loxc,loyc,difc,diyc,prodc,cuaxrc,cuayrc);
printf("\n%.4f %.4f %.4f %.4f %.4f %.4f %.4f
%.4f %.4f "
,X4,d,loxd,loyd,difd,diyd,prodd,cuaxrd,cuayrd);
printf("\n%.4f %.4f %.4f %.4f %.4f %.4f %.4f
%.4f %.4f "
,X5,e,loxe,loye,dife,diye,prode,cuaxre,cuayre);

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;

printf("\n\n sumX sumY Ln(X) ln(Y) Sxy


Sxx Syy");
printf("\n\n%f %f %f %f %.7f
%f",A,B,lnx,lny,Sxy,Sxx,Syy);

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);

printf("\n\nCOEFICIENTE DE CORRELACION LINEAL r = %f",r);


printf("\nCOEFICIENTE DE DETERMINACION R = %f",R);

}
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("digite los valores de X : ");


printf("\nX1 = ");
scanf("%f",&X1);
printf("X2 = ");
scanf("%f",&X2);
printf("X3 = ");
scanf("%f",&X3);
printf("X4 = ");
scanf("%f",&X4);
printf("X5 = ");
scanf("%f",&X5);
printf("X6 = ");
scanf("%f",&X6);

printf("\ndigite los valores de Y : ");

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 ");

printf("\n%.4f %.4f %.4f %.4f %.4f %.4f %.4f


%.4f %.4f "
,X1,a,loxa,loya,difa,diya,proda,cuaxra,cuayra);
printf("\n%.4f %.4f %.4f %.4f %.4f %.4f %.4f
%.4f %.4f "
,X2,b,loxb,loyb,difb,diyb,prodb,cuaxrb,cuayrb);
printf("\n%.4f %.4f %.4f %.4f %.4f %.4f %.4f
%.4f %.4f "
,X3,c,loxc,loyc,difc,diyc,prodc,cuaxrc,cuayrc);
printf("\n%.4f %.4f %.4f %.4f %.4f %.4f %.4f
%.4f %.4f "
,X4,d,loxd,loyd,difd,diyd,prodd,cuaxrd,cuayrd);
printf("\n%.4f %.4f %.4f %.4f %.4f %.4f %.4f
%.4f %.4f "
,X5,e,loxe,loye,dife,diye,prode,cuaxre,cuayre);
printf("\n%.4f %.4f %.4f %.4f %.4f %.4f %.4f
%.4f %.4f "
,X6,f,loxf,loyf,diff,diyf,prodf,cuaxrf,cuayrf);

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;

printf("\n\n sumX sumY Ln(X) ln(Y) Sxy


Sxx Syy");
printf("\n\n%f %f %f %f %.7f
%f",A,B,lnx,lny,Sxy,Sxx,Syy);

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);

printf("\n\nCOEFICIENTE DE CORRELACION LINEAL r = %f",r);


printf("\nCOEFICIENTE DE DETERMINACION R = %f",R);

}
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;

printf("digite los valores de X : ");


printf("\nX1 = ");
scanf("%f",&X1);
printf("X2 = ");
scanf("%f",&X2);
printf("X3 = ");
scanf("%f",&X3);
printf("X4 = ");
scanf("%f",&X4);
printf("X5 = ");
scanf("%f",&X5);
printf("X6 = ");
scanf("%f",&X6);
printf("X7 = ");
scanf("%f",&X7);

printf("\ndigite los valores de Y : ");


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;

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);

printf(" X Y log(X) log(y) (X-X1) (Y-Y1)


(X-X1)*(Y-Y1) (X-X1)^2 (Y-Y1)^2 ");

printf("\n%.4f %.4f %.4f %.4f %.4f %.4f %.4f


%.4f %.4f "
,X1,a,loxa,loya,difa,diya,proda,cuaxra,cuayra);
printf("\n%.4f %.4f %.4f %.4f %.4f %.4f %.4f
%.4f %.4f "
,X2,b,loxb,loyb,difb,diyb,prodb,cuaxrb,cuayrb);
printf("\n%.4f %.4f %.4f %.4f %.4f %.4f %.4f
%.4f %.4f "
,X3,c,loxc,loyc,difc,diyc,prodc,cuaxrc,cuayrc);
printf("\n%.4f %.4f %.4f %.4f %.4f %.4f %.4f
%.4f %.4f "
,X4,d,loxd,loyd,difd,diyd,prodd,cuaxrd,cuayrd);
printf("\n%.4f %.4f %.4f %.4f %.4f %.4f %.4f
%.4f %.4f "
,X5,e,loxe,loye,dife,diye,prode,cuaxre,cuayre);
printf("\n%.4f %.4f %.4f %.4f %.4f %.4f %.4f
%.4f %.4f "
,X6,f,loxf,loyf,diff,diyf,prodf,cuaxrf,cuayrf);
printf("\n%.4f %.4f %.4f %.4f %.4f %.4f %.4f
%.4f %.4f "
,X7,g,loxg,loyg,difg,diyg,prodg,cuaxrg,cuayrg);

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;

printf("\n\n sumX sumY Ln(X) ln(Y) Sxy


Sxx Syy");
printf("\n\n%f %f %f %f %.7f
%f",A,B,lnx,lny,Sxy,Sxx,Syy);

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);

printf("\n\nCOEFICIENTE DE CORRELACION LINEAL r = %f",r);


printf("\nCOEFICIENTE DE DETERMINACION R = %f",R);

}
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("digite los valores de X : ");


printf("\nX1 = ");
scanf("%f",&X1);
printf("X2 = ");
scanf("%f",&X2);
printf("X3 = ");
scanf("%f",&X3);
printf("X4 = ");
scanf("%f",&X4);
printf("X5 = ");
scanf("%f",&X5);
printf("X6 = ");
scanf("%f",&X6);
printf("X7 = ");
scanf("%f",&X7);
printf("X8 = ");
scanf("%f",&X8);

printf("\ndigite los valores de Y : ");

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);

printf(" X Y log(X) log(y) (X-X1) (Y-Y1)


(X-X1)*(Y-Y1) (X-X1)^2 (Y-Y1)^2 ");

printf("\n%.4f %.4f %.4f %.4f %.4f %.4f %.4f


%.4f %.4f "
,X1,a,loxa,loya,difa,diya,proda,cuaxra,cuayra);
printf("\n%.4f %.4f %.4f %.4f %.4f %.4f %.4f
%.4f %.4f "
,X2,b,loxb,loyb,difb,diyb,prodb,cuaxrb,cuayrb);
printf("\n%.4f %.4f %.4f %.4f %.4f %.4f %.4f
%.4f %.4f "
,X3,c,loxc,loyc,difc,diyc,prodc,cuaxrc,cuayrc);
printf("\n%.4f %.4f %.4f %.4f %.4f %.4f %.4f
%.4f %.4f "
,X4,d,loxd,loyd,difd,diyd,prodd,cuaxrd,cuayrd);
printf("\n%.4f %.4f %.4f %.4f %.4f %.4f %.4f
%.4f %.4f "
,X5,e,loxe,loye,dife,diye,prode,cuaxre,cuayre);
printf("\n%.4f %.4f %.4f %.4f %.4f %.4f %.4f
%.4f %.4f "
,X6,f,loxf,loyf,diff,diyf,prodf,cuaxrf,cuayrf);
printf("\n%.4f %.4f %.4f %.4f %.4f %.4f %.4f
%.4f %.4f "
,X7,g,loxg,loyg,difg,diyg,prodg,cuaxrg,cuayrg);
printf("\n%.4f %.4f %.4f %.4f %.4f %.4f %.4f
%.4f %.4f "
,X8,h,loxh,loyh,difh,diyh,prodh,cuaxrh,cuayrh);

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;

printf("\n\n sumX sumY Ln(X) ln(Y) Sxy


Sxx Syy");
printf("\n\n%f %f %f %f %.7f
%f",A,B,lnx,lny,Sxy,Sxx,Syy);

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);

printf("\n\nCOEFICIENTE DE CORRELACION LINEAL r = %f",r);


printf("\nCOEFICIENTE DE DETERMINACION R = %f",R);

}
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("digite los valores de X : ");


printf("\nX1 = ");
scanf("%f",&X1);
printf("X2 = ");
scanf("%f",&X2);
printf("X3 = ");
scanf("%f",&X3);
printf("X4 = ");
scanf("%f",&X4);
printf("X5 = ");
scanf("%f",&X5);
printf("X6 = ");
scanf("%f",&X6);
printf("X7 = ");
scanf("%f",&X7);
printf("X8 = ");
scanf("%f",&X8);
printf("X9 = ");
scanf("%f",&X9);

printf("\ndigite los valores de Y : ");

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);

printf(" X Y log(X) log(y) (X-X1) (Y-Y1)


(X-X1)*(Y-Y1) (X-X1)^2 (Y-Y1)^2 ");

printf("\n%.4f %.4f %.4f %.4f %.4f %.4f %.4f


%.4f %.4f "
,X1,a,loxa,loya,difa,diya,proda,cuaxra,cuayra);
printf("\n%.4f %.4f %.4f %.4f %.4f %.4f %.4f
%.4f %.4f "
,X2,b,loxb,loyb,difb,diyb,prodb,cuaxrb,cuayrb);
printf("\n%.4f %.4f %.4f %.4f %.4f %.4f %.4f
%.4f %.4f "
,X3,c,loxc,loyc,difc,diyc,prodc,cuaxrc,cuayrc);
printf("\n%.4f %.4f %.4f %.4f %.4f %.4f %.4f
%.4f %.4f "
,X4,d,loxd,loyd,difd,diyd,prodd,cuaxrd,cuayrd);
printf("\n%.4f %.4f %.4f %.4f %.4f %.4f %.4f
%.4f %.4f "
,X5,e,loxe,loye,dife,diye,prode,cuaxre,cuayre);
printf("\n%.4f %.4f %.4f %.4f %.4f %.4f %.4f
%.4f %.4f "
,X6,f,loxf,loyf,diff,diyf,prodf,cuaxrf,cuayrf);
printf("\n%.4f %.4f %.4f %.4f %.4f %.4f %.4f
%.4f %.4f "
,X7,g,loxg,loyg,difg,diyg,prodg,cuaxrg,cuayrg);
printf("\n%.4f %.4f %.4f %.4f %.4f %.4f %.4f
%.4f %.4f "
,X8,h,loxh,loyh,difh,diyh,prodh,cuaxrh,cuayrh);
printf("\n%.4f %.4f %.4f %.4f %.4f %.4f %.4f
%.4f %.4f "
,X9,i,loxi,loyi,difi,diyi,prodi,cuaxri,cuayri);

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
;

printf("\n\n sumX sumY Ln(X) ln(Y) Sxy


Sxx Syy");
printf("\n\n%f %f %f %f %.7f
%f",A,B,lnx,lny,Sxy,Sxx,Syy);

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);

printf("\n\nCOEFICIENTE DE CORRELACION LINEAL r = %f",r);


printf("\nCOEFICIENTE DE DETERMINACION R = %f",R);
Regresin Exponencial
#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;
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,Bz,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("digite los valores de X : ");


printf("\nX1 = ");
scanf("%f",&X1);
printf("X2 = ");
scanf("%f",&X2);
printf("X3 = ");
scanf("%f",&X3);
printf("X4 = ");
scanf("%f",&X4);
printf("X5 = ");
scanf("%f",&X5);
printf("X6 = ");
scanf("%f",&X6);
printf("X7 = ");
scanf("%f",&X7);
printf("X8 = ");
scanf("%f",&X8);
printf("X9 = ");
scanf("%f",&X9);

printf("\ndigite los valores de Y : ");

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);

printf(" X Y ln(Y) (X-X1) (Y-Y1)


(X-X1)*(Y-Y1) (X-X1)^2 (Y-Y1)^2 ");
printf("\n%.4f %.4f %.4f %.4f %.4f %.8f %.8f
%.4f " ,X1,a,lna,difa,diya,proda,cuaxra,cuayra);
printf("\n%.4f %.4f %.4f %.4f %.4f %.8f %.8f
%.4f " ,X2,b,lnb,difb,diyb,prodb,cuaxrb,cuayrb);
printf("\n%.4f %.4f %.4f %.4f %.4f %.8f %.8f
%.4f " ,X3,c,lnc,difc,diyc,prodc,cuaxrc,cuayrc);
printf("\n%.4f %.4f %.4f %.4f %.4f %.8f %.8f
%.4f " ,X4,d,lnd,difd,diyd,prodd,cuaxrd,cuayrd);
printf("\n%.4f %.4f %.4f %.4f %.4f %.8f %.8f
%.4f " ,X5,e,lne,dife,diye,prode,cuaxre,cuayre);
printf("\n%.4f %.4f %.4f %.4f %.4f %.8f %.8f
%.4f " ,X6,f,lnf,diff,diyf,prodf,cuaxrf,cuayrf);
printf("\n%.4f %.4f %.4f %.4f %.4f %.8f %.8f
%.4f " ,X7,g,lng,difg,diyg,prodg,cuaxrg,cuayrg);
printf("\n%.4f %.4f %.4f %.4f %.4f %.8f %.8f
%.4f " ,X8,h,lnh,difh,diyh,prodh,cuaxrh,cuayrh);
printf("\n%.4f %.4f %.4f %.4f %.4f %.8f %.8f
%.4f " ,X9,i,lni,difi,diyi,prodi,cuaxri,cuayri);

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);

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);
By=pow(2.7182,B-(Bx*A));

printf("\n\nLA CURVA LOGARITMICA : Y = %f *e^%f*(X)


",By,Bx);
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 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("digite los valores de X : ");


printf("\nX1 = ");
scanf("%f",&X1);
printf("X2 = ");
scanf("%f",&X2);
printf("X3 = ");
scanf("%f",&X3);
printf("X4 = ");
scanf("%f",&X4);
printf("X5 = ");
scanf("%f",&X5);

printf("\ndigite los valores de Y : ");

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);

printf(" X Y ln(Y) (X-X1) (Y-Y1)


(X-X1)*(Y-Y1) (X-X1)^2 (Y-Y1)^2 ");

printf("\n%.4f %.4f %.4f %.4f %.4f %.8f %.8f


%.4f " ,X1,a,lna,difa,diya,proda,cuaxra,cuayra);
printf("\n%.4f %.4f %.4f %.4f %.4f %.8f %.8f
%.4f " ,X2,b,lnb,difb,diyb,prodb,cuaxrb,cuayrb);
printf("\n%.4f %.4f %.4f %.4f %.4f %.8f %.8f
%.4f " ,X3,c,lnc,difc,diyc,prodc,cuaxrc,cuayrc);
printf("\n%.4f %.4f %.4f %.4f %.4f %.8f %.8f
%.4f " ,X4,d,lnd,difd,diyd,prodd,cuaxrd,cuayrd);
printf("\n%.4f %.4f %.4f %.4f %.4f %.8f %.8f
%.4f " ,X5,e,lne,dife,diye,prode,cuaxre,cuayre);
Sxy=(proda+prodb+prodc+prodd+prode);
Sxx=(cuayra+cuayrb+cuayrc+cuayrd+cuayre);
Syy=(cuaxra+cuaxrb+cuaxrc+cuaxrd+cuaxre);

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);
By=pow(2.7182,B-(Bx*A));

printf("\n\nLA CURVA LOGARITMICA : Y = %f *e^%f*(X)


",By,Bx);

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 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("digite los valores de X : ");


printf("\nX1 = ");
scanf("%f",&X1);
printf("X2 = ");
scanf("%f",&X2);
printf("X3 = ");
scanf("%f",&X3);
printf("X4 = ");
scanf("%f",&X4);
printf("X5 = ");
scanf("%f",&X5);
printf("X6 = ");
scanf("%f",&X6);

printf("\ndigite los valores de Y : ");

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);

printf(" X Y ln(Y) (X-X1) (Y-Y1)


(X-X1)*(Y-Y1) (X-X1)^2 (Y-Y1)^2 ");
printf("\n%.4f %.4f %.4f %.4f %.4f %.8f %.8f
%.4f " ,X1,a,lna,difa,diya,proda,cuaxra,cuayra);
printf("\n%.4f %.4f %.4f %.4f %.4f %.8f %.8f
%.4f " ,X2,b,lnb,difb,diyb,prodb,cuaxrb,cuayrb);
printf("\n%.4f %.4f %.4f %.4f %.4f %.8f %.8f
%.4f " ,X3,c,lnc,difc,diyc,prodc,cuaxrc,cuayrc);
printf("\n%.4f %.4f %.4f %.4f %.4f %.8f %.8f
%.4f " ,X4,d,lnd,difd,diyd,prodd,cuaxrd,cuayrd);
printf("\n%.4f %.4f %.4f %.4f %.4f %.8f %.8f
%.4f " ,X5,e,lne,dife,diye,prode,cuaxre,cuayre);
printf("\n%.4f %.4f %.4f %.4f %.4f %.8f %.8f
%.4f " ,X6,f,lnf,diff,diyf,prodf,cuaxrf,cuayrf);

Sxy=(proda+prodb+prodc+prodd+prode+prodf);
Sxx=(cuayra+cuayrb+cuayrc+cuayrd+cuayre+cuayrf);
Syy=(cuaxra+cuaxrb+cuaxrc+cuaxrd+cuaxre+cuaxrf);

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);
By=pow(2.7182,B-(Bx*A));

printf("\n\nLA CURVA LOGARITMICA : Y = %f *e^%f*(X)


",By,Bx);

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 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);

printf("digite los valores de X : ");


printf("\nX1 = ");
scanf("%f",&X1);
printf("X2 = ");
scanf("%f",&X2);
printf("X3 = ");
scanf("%f",&X3);
printf("X4 = ");
scanf("%f",&X4);
printf("X5 = ");
scanf("%f",&X5);
printf("X6 = ");
scanf("%f",&X6);
printf("X7 = ");
scanf("%f",&X7);

printf("\ndigite los valores de Y : ");


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(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);

printf(" X Y ln(Y) (X-X1) (Y-Y1)


(X-X1)*(Y-Y1) (X-X1)^2 (Y-Y1)^2 ");

printf("\n%.4f %.4f %.4f %.4f %.4f %.8f %.8f


%.4f " ,X1,a,lna,difa,diya,proda,cuaxra,cuayra);
printf("\n%.4f %.4f %.4f %.4f %.4f %.8f %.8f
%.4f " ,X2,b,lnb,difb,diyb,prodb,cuaxrb,cuayrb);
printf("\n%.4f %.4f %.4f %.4f %.4f %.8f %.8f
%.4f " ,X3,c,lnc,difc,diyc,prodc,cuaxrc,cuayrc);
printf("\n%.4f %.4f %.4f %.4f %.4f %.8f %.8f
%.4f " ,X4,d,lnd,difd,diyd,prodd,cuaxrd,cuayrd);
printf("\n%.4f %.4f %.4f %.4f %.4f %.8f %.8f
%.4f " ,X5,e,lne,dife,diye,prode,cuaxre,cuayre);
printf("\n%.4f %.4f %.4f %.4f %.4f %.8f %.8f
%.4f " ,X6,f,lnf,diff,diyf,prodf,cuaxrf,cuayrf);
printf("\n%.4f %.4f %.4f %.4f %.4f %.8f %.8f
%.4f " ,X7,g,lng,difg,diyg,prodg,cuaxrg,cuayrg);

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);

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);
By=pow(2.7182,B-(Bx*A));

printf("\n\nLA CURVA LOGARITMICA : Y = %f *e^%f*(X)


",By,Bx);

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 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("digite los valores de X : ");


printf("\nX1 = ");
scanf("%f",&X1);
printf("X2 = ");
scanf("%f",&X2);
printf("X3 = ");
scanf("%f",&X3);
printf("X4 = ");
scanf("%f",&X4);
printf("X5 = ");
scanf("%f",&X5);
printf("X6 = ");
scanf("%f",&X6);
printf("X7 = ");
scanf("%f",&X7);
printf("X8 = ");
scanf("%f",&X8);

printf("\ndigite los valores de Y : ");

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);

printf(" X Y ln(Y) (X-X1) (Y-Y1)


(X-X1)*(Y-Y1) (X-X1)^2 (Y-Y1)^2 ");

printf("\n%.4f %.4f %.4f %.4f %.4f %.8f %.8f


%.4f " ,X1,a,lna,difa,diya,proda,cuaxra,cuayra);
printf("\n%.4f %.4f %.4f %.4f %.4f %.8f %.8f
%.4f " ,X2,b,lnb,difb,diyb,prodb,cuaxrb,cuayrb);
printf("\n%.4f %.4f %.4f %.4f %.4f %.8f %.8f
%.4f " ,X3,c,lnc,difc,diyc,prodc,cuaxrc,cuayrc);
printf("\n%.4f %.4f %.4f %.4f %.4f %.8f %.8f
%.4f " ,X4,d,lnd,difd,diyd,prodd,cuaxrd,cuayrd);
printf("\n%.4f %.4f %.4f %.4f %.4f %.8f %.8f
%.4f " ,X5,e,lne,dife,diye,prode,cuaxre,cuayre);
printf("\n%.4f %.4f %.4f %.4f %.4f %.8f %.8f
%.4f " ,X6,f,lnf,diff,diyf,prodf,cuaxrf,cuayrf);
printf("\n%.4f %.4f %.4f %.4f %.4f %.8f %.8f
%.4f " ,X7,g,lng,difg,diyg,prodg,cuaxrg,cuayrg);
printf("\n%.4f %.4f %.4f %.4f %.4f %.8f %.8f
%.4f " ,X8,h,lnh,difh,diyh,prodh,cuaxrh,cuayrh);

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);

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);
By=pow(2.7182,B-(Bx*A));

printf("\n\nLA CURVA LOGARITMICA : Y = %f *e^%f*(X)


",By,Bx);

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);

}
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);

IF C==1 THEN /////progresiva///


////1ra
PD1:=(F1-F0)/(h);
e1:= ((Vreal-PD1)/Vreal)*100;

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;

IF C==2 THEN //// centrada


////1ra
PD1:=(F1-F_1)/(2*h);
e1:= ((Vreal-PD1)/Vreal)*100;

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

PRINT("La 3RA der de 5puntos es:"+TD2);


PRINT("Su error es:"+e6);
wait(-1);
END;

IF C==3 THEN //// Regresiva


////1ra
PD1:=(F0-F_1)/(h);
e1:= ((Vreal-PD1)/Vreal)*100;

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

PRINT("Su error es:"+e12);


print("*******************************************");
PRINT("3DA der progresiva de 3P es:"+P222);
PRINT("Su error es:"+e16);
print("--------------------------------------");
PRINT("3DA der centrada de 5P es :"+C222);
PRINT("Su error es:"+e17);
print("--------------------------------------");
PRINT("3DA der regresiva de 3P es :"+R222);
PRINT("Su error es:"+e18);
print("*******************************************");

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

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;

///////////////////////////////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;

S-ar putea să vă placă și