Vous êtes sur la page 1sur 5

Facultad de Ingeniera

Programa de Ingeniera de Sistemas


Programacin I
Primer corte

CASO DE ESTUDIO: COEFICIENTE DE


CORRELACIN LINEAL
1. ENUNCIADO
Disear e implementar un algoritmo que permita calcular el coeficiente de correlacin
lineal entre las estaturas y los pesos de N jugadores de un equipo de ftbol.
Para tal fin el algoritmo debe pedir como datos de entrada:
1. Cantidad de jugadores (N)
2. Estatura de los N jugadores (Estatura_X)
3. Peso de los N jugadores (Peso_Y)
Las frmulas para hallar la correlacin son:
1. Se calculan las medias aritmticas
2. Se calcula la covarianza
3. Se calculan las desviaciones tpicas
4. Se calcula el coeficiente de correlacin lineal r
Para interpretar los resultados utilizar la siguiente tabla:
En general, r > 0 indica una relacin positiva, r < 0 indica una relacin negativa,
mientras que r = 0 indica que no hay relacin (o que las variables son independientes y
no estn relacionadas).
Aqu, r = 1,0 describe una correlacin positiva perfecta y r = -1,0 describe una
correlacin negativa perfecta. Cuanto ms cerca estn los coeficientes de +1,0 y -1,0,
mayor ser la fuerza de la relacin entre las variables.
VALOR DE

FUERZA DE LA
RELACIN

( - 1.0 a - 0.5 ) ( 1.0 a 0.5)

Fuerte

( - 0.5 a - 0.3 ) ( 0.3 a 0.5)

Moderada

( - 0.3 a - 0.1 ) ( 0.1 a 0.3 )

Dbil

- 0.1 a 0.1

Ninguna o muy dbil

Finalmente el algoritmo deber entregar el valor de la correlacin r, indicar si la relacin


es positiva, negativa o no hay relacin y decir la fuerza de la relacin con base en la
anterior tabla.

Facultad de Ingeniera
Programa de Ingeniera de Sistemas
Programacin I
Primer corte

Contexto del caso:


La correlacin estadstica determina la relacin o dependencia que existe entre las dos
variables que intervienen en una distribucin bidimensional. Es decir, determinar si los
cambios en una de las variables influyen en los cambios de la otra. En caso de que
suceda, diremos que las variables estn correlacionadas o que hay correlacin entre
ellas.
La correlacin puede decir algo acerca de la relacin entre las variables. Se utiliza para
entender:
1. Si la relacin es positiva o negativa
2. La fuerza de la relacin.

2. ESTRUCTURA DE DATOS
El tipo de dato para la matriz debe ser float. Los datos de entrada son: Estatura X y
Peso Y, los dems datos se deben calcular.
Matriz[N][5]

Estatura X
[0]

Peso Y
[1]

X*Y
[2]

X*X
[3]

Y*Y
[4]

[0]

1.78

85.0

151.3

3.1684

7225.0

[1]

1.79

89.5

160.205

3.2041

8010.25

[2]

1.75

86.8

151.9

3.0625

7534.24

[3]

1.87

85.6

160.072

3.4969

7327.36

[4]

1.77

82.3

145.671

3.1329

6773.29

[5]

1.75

81.6

142.8

3.0625

6658.56

[N]

Sumatoria_X

Sumatoria_Y

Sumatoria_XY

Sumatoria_X2

Sumatoria_Y2

3. REQUERIMIENTOS FUNCIONALES
RF1. El programa deber calcular e imprimir el valor del coeficiente de correlacin r.
r = Covarianza / (Desviacion_X * Desviacion_Y);

RF2. Para poder calcular el coeficiente de correlacin r, se deben calcular las


desviaciones tpicas, Desviacion_X, Desviacion_Y.
Desviacion_X = sqrt((Sumatoria_X2 / N) - (Media_X * Media_X));
Desviacion_Y = sqrt((Sumatoria_Y2 / N) - (Media_Y * Media_Y));

Facultad de Ingeniera
Programa de Ingeniera de Sistemas
Programacin I
Primer corte

RF3. Para poder calcular las desviaciones tpicas, se deben calcular las medias
aritmticas, Media_X, Media_Y.
Media_X = Sumatoria_X / N;
Media_Y = Sumatoria_Y / N;

RF4. Para poder calcular el coeficiente de correlacin r, se debe calcular la covarianza,


Covarianza.
Covarianza = (Sumatoria_XY / N) - (Media_X * Media_Y);

RF4. Finalmente el algoritmo deber entregar el valor de la correlacin r, indicar si la


relacin es positiva, negativa o no hay relacin y decir la fuerza de la relacin con
base en la siguiente tabla:
VALOR DE r
( - 1.0 a - 0.5 ) ( 1.0 a 0.5)

Fuerte

( - 0.5 a - 0.3 ) ( 0.3 a 0.5)

Moderada

( - 0.3 a - 0.1 ) ( 0.1 a 0.3 )

Dbil

- 0.1 a 0.1

4.

FUERZA DE LA
RELACIN

Ninguna o muy dbil

REQUERIMIENTOS INSTRUCCIONALES
A. ANLISIS

De acuerdo al enunciado, se deben interpretar cada una de las frmulas, y pasarlas a


cdigo de programacin para poder cumplir con los Requerimientos Funcionales.
1. Se calculan las medias aritmticas
Media_X = Sumatoria_X / N; Media_Y = Sumatoria_Y / N
2. Se calcula la covarianza
Covarianza = (Sumatoria_XY / N) - (Media_X * Media_Y)

3. Se calculan las desviaciones tpicas


Desviacion_X = sqrt((Sumatoria_X2/N)-(Media_X*Media_X))
Desviacion_Y = sqrt((Sumatoria_Y2/N)-(Media_Y*Media_Y))

Facultad de Ingeniera
Programa de Ingeniera de Sistemas
Programacin I
Primer corte

4. Se calcula el coeficiente de correlacin lineal


r = Covarianza / (Desviacion_X * Desviacion_Y)
B. DISEO
Primero se deben realizar las operaciones para almacenar los datos de entrada, se
pide la estatura y el peso y con ellos se realizan las operaciones hasta completar la
matriz de N filas, y 5 columnas.
// Se utiliza un ciclo para solicitar los valores y procesar los datos de la matriz
for (i = 0; i < N; i++)
{
cout<<"\n\tEstatura jugador "<<i+1<<": ";
cin>>Matriz[i][0]; // Esto es el valor de X
cout<<"\tPeso jugador: ";
cin>>Matriz[i][1]; // Esto es el valor de Y
Matriz[i][2] = Matriz[i][0] * Matriz[i][1]; // Esto es X * Y
Matriz[i][3] = Matriz[i][0] * Matriz[i][0]; // Esto es X * X
Matriz[i][4] = Matriz[i][1] * Matriz[i][1]; // Esto es Y * Y
}
// Se utiliza ciclo para el calculo de las sumatorias
for (i = 0; i < N; i++)
{
Sumatoria_X += Matriz[i][0];
Sumatoria_Y += Matriz[i][1];
Sumatoria_XY += Matriz[i][2];
Sumatoria_X2 += Matriz[i][3];
Sumatoria_Y2 += Matriz[i][4];
}

5.

IMPLEMENTACIN

El orden sera el siguiente:


//
//
//
//
//
//
//

Se
Se
Se
Se
Se
Se
Se

//
//
//
//
//

Se
Se
Se
Se
Se

define N y se solicita al usuario el nmero de jugadores


declaran las variables que se necesitan y
inicializan en cero las variables que son sumatorias
declara la matriz de tamao [N][5]
utiliza un ciclo para solicitar los valores de la matriz
utiliza un ciclo para el clculo de las sumatorias
realizan las operaciones para el clculo de la correlacin r
// Medias aritmticas
// Covarianza
// Desviaciones tpicas
// Coeficiente de correlacin lineal r
imprimen resultados
imprimen ecuaciones alternas Medias, Desviaciones, etc.
imprime la correlacin
especifica si no hay relacin (r = 0), o si la relacin es positiva o negativa
especifica la fuerza de la relacin teniendo en cuenta la tabla dada (enunciado)

Facultad de Ingeniera
Programa de Ingeniera de Sistemas
Programacin I
Primer corte

C. PRUEBAS
[i]

Estatura_X[i]

Peso_Y[i]

Producto_XY[i]

Cuadrado_X[i]

Cuadrado_Y[i]

1,78

85

151,3

3,1684

7225,0000

1,79

89,5

160,205

3,2041

8010,2500

1,75

86,8

151,9

3,0625

7534,2400

1,87

85,6

160,072

3,4969

7327,3600

1,77

82,3

145,671

3,1329

6773,2900

1,75

81,6

142,8

3,0625

6658,5600

N=6

10,71

510,8

911,948

19,127300

43528,7000

Sumatoria_X

Sumatoria_Y

Sumatoria_XY

Sumatoria_X2

Sumatoria_Y2

5. ENTREGABLES
1. Cdigo fuente (correlacion_T000xxxxx.cpp)
debidamente comentado utilizando //

Vous aimerez peut-être aussi