Autor
|
Tema: Medidas de Dispersión. Error (Leído 2,024 veces)
|
Sword9K
Desconectado
Mensajes: 10
|
ya corregí algunas cosas en el arreglo para pedir los valores, pero no se que es lo que podría estar mal en la desviación por la frecuencia. #include <iostream> #include <conio.h> #include <math.h>
using namespace std;
int main(int argc, char** argv) { ddouble numeros[500], numeros2[500], numeros3[500], n; double fre=0, coef=0, des=0, varia=0, suma=0, media=0, suma2=0; cout <<"\nDigite el Numero de Datos:"; cin>>n; for(int i=0, j=0, k=0;i<n && j<n && k<n;i++ && j++ && k++){ cout <<"\n-Digite el numero: "; cin>>numeros[i]; cout <<"\n-Digite la Frecuencia del Dato: "; cin>>numeros2[j]; fre = fre + numeros2[j]; numeros3[k] = numeros[i] * numeros2[j] ; //cout <<"\n X.F:"<<numeros3[k]; suma = suma + numeros3[k]; } media = suma / fre; cout<<"\n Promedio:"<<media; for(int i=0;i<n;i++){ numeros[i]= numeros[i] - media; numeros[i]= pow(numeros[i],2); cout<<"\nDesviacion al cuadrado: "<<numeros[i]; } for(int i=0, j=0;i<n && j<n;i++ && j++){ numeros2[j] = numeros2[j] * numeros[i]; cout<<"\nDesviacion por la Frecuencia: "<<numeros2[j]; suma2 = suma2 + numeros2[j]; } varia = suma / fre; cout<<"\nLa Varianza es: "<<varia; des = sqrt(varia); cout<<"\nLa Desviacion Estandar es: "<<varia; coef = (des*100)/media; cout<<"\nCoeficiente de Variacion: "<<coef; getch(); return 0; }
|
|
« Última modificación: 12 Octubre 2018, 05:04 am por Sword9K »
|
En línea
|
|
|
|
dariodr01
Desconectado
Mensajes: 27
|
Hola, no entiendo muy bien tu codigo. Cual es el enunciado del problema. Salu2.
|
|
|
En línea
|
|
|
|
Sword9K
Desconectado
Mensajes: 10
|
Es crear un programa que realice las medidas de dispersión en datos agrupados, pero como este utiliza dos arreglos, uno para los datos y luego otro para la frecuencia de cada uno. de estos toca sacar el promedio, desviación al cuadrado, de esa desviación multiplicarla por la frecuencia etc. el programa creo que esta bien, pero no se que pasa en la desviación al cuadrado que creo que los datos salen mal
|
|
|
En línea
|
|
|
|
EdePC
|
Saludos, - Tienes algo de redundancia de variables, además de que algunas variables no tienen el nombre apropiado. - Se trata de Estadística Descriptiva > Medidas de dispersión en datos simples - He hecho algunos parches para que funciones bien, revísalos para ver si cumple con tu ejercicio, yo lo he probado con la tabla que adjunto aquí: -- Tabla (utilizo otro método para el cálculo, pero da el mismo resultado, solo concéntrate en xi, fi, y los resultados finales, el código utiliza tu propio método): -- Código corregido: #include <iostream> #include <conio.h> #include <math.h> using namespace std; int main(int argc, char** argv) { double numeros[500], numeros2[500], numeros3[500], n; double fre = 0, coef = 0, des = 0, varia = 0, suma = 0, media = 0, suma2 = 0; cout << "\nDigite el Numero de Filas de la Tabla:"; cin >> n; for (int i = 0; i < n; i++) { cout << "\n- Digite el numero: "; cin >> numeros[i]; // xi cout << "\n- Digite la Frecuencia del Dato: "; cin >> numeros2[i]; // fi fre = fre + numeros2[i]; // SUM(fi) o número de datos (n) numeros3[i] = numeros[i] * numeros2[i] ; // xi*fi //cout <<"\n X.F:"<<numeros3[i]; suma = suma + numeros3[i]; //SUM(xi*fi) } media = suma / fre; cout << "\n Promedio:" << media; for (int i = 0; i < n; i++) { numeros[i] = fabs(numeros[i] - media); // |xi - media| numeros[i] = pow(numeros[i], 2); // |xi - media|^2 cout << "\nDesviacion al cuadrado: " << numeros[i]; } for (int i = 0; i < n; i++) { numeros2[i] = numeros2[i] * numeros[i]; // (|xi - media|^2)*fi cout << "\nDesviacion por la Frecuencia: " << numeros2[i]; suma2 = suma2 + numeros2[i]; // SUM( (|xi - media|^2)*fi ) } varia = suma2 / fre; // free es el número de datos n (SUM(Xi*fi)) cout << "\nLa Varianza es: " << varia; des = sqrt(varia); // Desviación Típica o Estándar cout << "\nLa Desviacion Estandar es: " << varia; coef = (des * 100) / media; // Coeficiente de variación en % cout << "\nCoeficiente de Variacion: " << coef; getch(); return 0; }
-- Resultados Digite el Numero de Filas de la Tabla:11
- Digite el numero: 0
- Digite la Frecuencia del Dato: 1
- Digite el numero: 1
- Digite la Frecuencia del Dato: 1
- Digite el numero: 2
- Digite la Frecuencia del Dato: 2
- Digite el numero: 3
- Digite la Frecuencia del Dato: 0
- Digite el numero: 4
- Digite la Frecuencia del Dato: 3
- Digite el numero: 5
- Digite la Frecuencia del Dato: 3
- Digite el numero: 6
- Digite la Frecuencia del Dato: 4
- Digite el numero: 7
- Digite la Frecuencia del Dato: 1
- Digite el numero: 8
- Digite la Frecuencia del Dato: 2
- Digite el numero: 9
- Digite la Frecuencia del Dato: 2
- Digite el numero: 10
- Digite la Frecuencia del Dato: 1
Promedio:5.35 Desviacion al cuadrado: 28.6225 Desviacion al cuadrado: 18.9225 Desviacion al cuadrado: 11.2225 Desviacion al cuadrado: 5.5225 Desviacion al cuadrado: 1.8225 Desviacion al cuadrado: 0.1225 Desviacion al cuadrado: 0.4225 Desviacion al cuadrado: 2.7225 Desviacion al cuadrado: 7.0225 Desviacion al cuadrado: 13.3225 Desviacion al cuadrado: 21.6225 Desviacion por la Frecuencia: 28.6225 Desviacion por la Frecuencia: 18.9225 Desviacion por la Frecuencia: 22.445 Desviacion por la Frecuencia: 0 Desviacion por la Frecuencia: 5.4675 Desviacion por la Frecuencia: 0.3675 Desviacion por la Frecuencia: 1.69 Desviacion por la Frecuencia: 2.7225 Desviacion por la Frecuencia: 14.045 Desviacion por la Frecuencia: 26.645 Desviacion por la Frecuencia: 21.6225 La Varianza es: 7.1275 La Desviacion Estandar es: 7.1275 Coeficiente de Variacion: 49.9016
|
|
|
En línea
|
|
|
|
Sword9K
Desconectado
Mensajes: 10
|
:0, Esta Perfecto me siento pendejo pero bn. mi error era que utilizaba una variable int para cada arreglo. Muchas Gracias por ayudarme, es increíble.
|
|
|
En línea
|
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
Medidas Template
Diseño Gráfico
|
White^^croW
|
3
|
2,034
|
14 Abril 2005, 17:11 pm
por White^^croW
|
|
|
Problemas con las medidas de un formulario
Programación Visual Basic
|
angiz18
|
3
|
1,541
|
1 Diciembre 2008, 16:03 pm
por XcryptOR
|
|
|
Las malnets recurren a la dispersión geográfica para seguir en activo
Noticias
|
wolfbcn
|
0
|
1,216
|
12 Marzo 2013, 21:08 pm
por wolfbcn
|
|
|
¿Mayor dispersión en excel?
Programación General
|
Ikku
|
0
|
1,485
|
25 Septiembre 2014, 23:03 pm
por Ikku
|
|
|
Ayuda en Programa basico sobre Medidas de Dispersion
Programación C/C++
|
Sword9K
|
3
|
1,775
|
2 Septiembre 2018, 17:58 pm
por MAFUS
|
|