Autor
|
Tema: Ayuda en C++ Código que Calcule la Desviación Estándar? (Leído 15,309 veces)
|
sendwuk
Desconectado
Mensajes: 1
|
Tiene una matriz 5 filas(califs) x 10columnas(alumnos) llena de datos se desea conocer la desviacion standar de cada alumno y guardarla la de todos en un vector de dimencion 10 de cada . Imprimir el vector de las desviaciones estandar al final. eso es lo que tengo que desarrollar y el codigo que eh formulado es este #include <iostream> #include <math.h> #include <stdlib.h> #define FILAS 5 #define COLUM 10 using namespace std; int main() { int matriz[FILAS][COLUM] ={ 100,90,80,70,60,50,40,60,70 ,100, 100,95,65,75,100,99,90,89,79,60, 100,45,100,90,78,65,100,100,90,76, 100,90,90,99,82,73,64,68,70,80, }; int f, c,i,n=1; // Indices de f = filas c= columnas// int media=0; int des_std=0; int acum=0; int cuadrado=0; int vector_des[10]; for(f=0;f<FILAS;f++) { for(c=0;c<COLUM;c++) { acum=acum+matriz[f][c]; media= acum/5; cuadrado=cuadrado+((matriz[f][c]-media)*(matriz[f][c]-media)); des_std=sqrt(cuadrado/4); vector_des[i]=des_std; i++; cout<<" La desviacion estandar del Alumno" <<" " <<n << " es : " << vector_des[i] <<endl; n++; } } system("pause"); }
No entiendo como deben de ir los For, podrian ayudarme un poco Mod: Al publicar codigo usa las etiquetas GeSHi. Modifica el titulo y coloca uno descriptivo "ayuda" no dice nada
|
|
« Última modificación: 21 Marzo 2015, 00:50 am por sendwuk »
|
En línea
|
|
|
|
flony
Desconectado
Mensajes: 584
|
hace una bocha no hago matemáticas ...pero tratare de ayudar #include <stdlib.h> /7 cual es la finalidad de esta biblioteca ? ****************** recoda este es un vector...que esta corriendo en una matriz...no te olvides del doble for ...seria mejor hacer esa carga fuera de los for.....bueno eso en la parte practica, en la parte lógica que función cumple tener un vector en la cual todos los elementos son el mismo....o sea la varianza o desviación estándar...recordad que la desviacion estandar es solo un numero que vas a obtener del conjunto de datos ******************* cout<<" La desviacion estandar del Alumno" <<" " <<n << " es : " << vector_des[i] <<endl; cout << " La desviacion estandar del Alumno " << c << " es : " << des_std << endl; esta parte del código se me hace que queres responder si la nota del alumno esta fuera o no de la desviación estándar, para ello deberías realizar otro calculo matemático....o esta mal planteado lo expuesto en pantalla...repito la desviación estándar es solo una ******************* bueno para terminar una pagina donde explican como obtener la desviación estándar de una muestra http://es.wikipedia.org/wiki/Desviaci%C3%B3n_t%C3%ADpica******************* haaa para terminar podrías poner mas copada la matriz para que se pueda llenar por el usuario y no que vos pongas el dato ******************* creo que para mejorar la matriz deberia ser fila alumno columna nota
|
|
« Última modificación: 28 Marzo 2015, 04:17 am por flony »
|
En línea
|
si un problema no tiene solucion entonces no es un problema...es algo inevitable
|
|
|
Usuario Invitado
Desconectado
Mensajes: 625
|
Cálculos paso por paso: - Conteo (cantidad de números)
- Suma (suma de los números)
- Media (promedio de la suma)
- Diferencias^2: ( (Numero - media) ^ 2)
- Varianza (diferencia / conteo)
- Desviación estándar (Raíz de la varianza)
#include <iostream> #include <math.h> using namespace std; int main() { int data[5][10] ={ {100,90,80,70,60,50,40,60,70,100}, {100,95,65,75,100,99,90,89,79,60}, {100,45,100,90,78,65,100,100,90,76}, {100,90,90,99,82,73,64,68,70,80}, {85,90.5,98.3,99,69.8,98.7,89.9,95.4,89,100} }; double sum[5]; // cantidad de filas = cantidad de alumnos double avg[5]; double variance[5]; double deviation[5]; // sumatorias for(int row=0; row<5; row++) { sum[row] = 0; for(int col=0; col<10; col++) { // sumatoria de las notas de cada alumno sum[row] += data[row][col]; } } // promedios for(int index=0; index<5; index++) { avg[index] = sum[index] / (10.0f); } // varianzas for(int row=0; row<5; row++) { variance[row] = 0; for(int col=0; col<10; col++) { double range = pow(data[row][col] - avg[row], 2); variance[row] += range; } variance[row] = variance[row] / 10; } // desviaciones for(int index=0; index<5; index++) { deviation[index] = sqrt(variance[index]); } // imprime las desviaciones for(int index=0; index<5; index++) { cout << "La desviación del alumno es: " << deviation[index]; cout << "\n"; } return 0; }
La desviación del alumno es: 19.3907 La desviación del alumno es: 13.9556 La desviación del alumno es: 17.5397 La desviación del alumno es: 12.2 La desviación del alumno es: 8.87468
|
|
|
En línea
|
"La vida es muy peligrosa. No por las personas que hacen el mal, si no por las que se sientan a ver lo que pasa." Albert Einstein
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
Código que calcula Promedio Varianza y Desviación estándar (Python)
Scripting
|
XD YO
|
0
|
21,313
|
13 Marzo 2010, 02:08 am
por XD YO
|
|
|
Ayuda con un programa que calcule la diferencia entre dos fechas
Programación C/C++
|
davisinful
|
1
|
4,597
|
10 Noviembre 2011, 09:15 am
por do-while
|
|
|
calcular la desviacion estandar de un arreglo (problema)
Programación C/C++
|
Yamakasi_Jr
|
1
|
11,424
|
28 Agosto 2017, 04:50 am
por A.I.
|
|
|
Procesar matriz leída por un archivo txt y calcular la desviación estándar
Programación C/C++
|
NNCKO
|
6
|
2,899
|
1 Diciembre 2018, 01:40 am
por NNCKO
|
|
|
Ayuda para sacar la desviación estándar
Programación C/C++
|
lonelym29
|
1
|
3,338
|
11 Febrero 2020, 09:13 am
por CalgaryCorpus
|
|