
02/02/2011, 09:50
|
| | Fecha de Ingreso: febrero-2011
Mensajes: 1
Antigüedad: 14 aņos, 2 meses Puntos: 0 | |
Ayuda urgente!!! Graciass! Hola, tengo un problemon con un programa de c++, os cuento..
el enunciado del ejercicio es: tenemos 4 grupos i en total meteremos 10 valores, pero no sabemos cuantos valores pro cada grupo, solo que el total seran 10.
A partir de esos 10 valores, hemos de hacer la media x grupos i contar el numero de veces que hemos introducido un valor por cada grupo, i mas operaciones pero que eso es lo de menos, ya que supongo que arreglando como buscar la media i como encontrar el numero de veces que hemos introducido un valor, podré arreglarlo.
Para hacer el programa me sirvo de dos matrices, una de 2 filas i 10 columnas, en la que guardare los datos entrado (numero de grupo i el valor de cada grupo) i otra de 4x 6 en la que guardare en orden GUPO1 GRUPO2 GRUPO3 GRUPO4 i en las siguientes columnas el valor d la mediana, el numero de veces que he introduciod un valor etc.
espero que me podais ayudarr!!!!!!! muxas gracias de antemano
Aqui os dejo mi programa, que no calcula bien las cosas, agradeceria que me indicarais los errores.
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
main()
{
float grup_norm[10][2];
float taula[4][6];
int i;
int j;
int compt;
// Lectura de dades
for (i=0;i<10;i++)
{
printf("Entra grup: ");
scanf("%f",&grup_norm[i][0]);
printf("Entra normalitzacio %d: ",i+1);
scanf("%f",&grup_norm[i][1]);
}
// Cālcul de resultats
for (i=0;i<4;i++)
{
//cālcul de la media
compt=0;
taula[i][0]=0;
for (j=0;j<10;j++)
{
if (grup_norm[0][j]==i+1)
{
taula[i][0]=taula[i][0]+grup_norm[j][1];
compt=compt+1;
}
}
if (compt!=0)
{
taula[i][0]=taula[i][0]/compt;
}
// calculo del numero de veces
taula[i][1]=compt;
// cālcul de la varianįa
taula[i][2]=0;
compt=0;
for (j=0;j<10;j++)
{
if (grup_norm[j][0]==i+1)
{
taula[i][2]=taula[i][2]+(grup_norm[j][1]-taula[i][0])*(grup_norm[j][1]-taula[i][0]);
compt=compt+1;
}
}
if (compt!=0)
{
taula[i][2]=(1/(float)compt)*taula[i][2];
}
//cālcul de la desviaciķ estāndard
taula[i][3]=sqrt(taula[i][2]);
//cālcul coeficient de variaciķ
taula[i][4]=taula[i][3]/taula[i][0];
// cālcul dispersiķ
taula[i][5]=0;
for (j=0;j<10;j++)
{
if(grup_norm[j][0]==i+1)
{
taula[i][5]=taula[i][5]+(grup_norm[j][1]-taula[i][0]);
}
}
}
//presentaciķ de resultats
printf("GRUP\tMITJANA\tVEGADES\tVARIANCA DESVIACIO C.VARIACIO DISPERSIO\n");
for (i=0;i<4;i++)
{
printf("%d\t%.4f\t%d\t%.4f\t\t%.4f\t%.4f\t%.4f\n", i+1,taula[i][0],(int)taula[i][1],taula[i][2],taula[i][3],taula[i][4],taula[i][5]);
}
system("pause");
} |