elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Guía actualizada para evitar que un ransomware ataque tu empresa


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Ayuda en Programa basico sobre Medidas de Dispersion
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Ayuda en Programa basico sobre Medidas de Dispersion  (Leído 650 veces)
Sword9K

Desconectado Desconectado

Mensajes: 10


Ver Perfil
Ayuda en Programa basico sobre Medidas de Dispersion
« en: 1 Septiembre 2018, 03:58 am »

No veo que pueda estar mal, aunque... creo que el problema empieza con el ordenamiento.

Código
  1. #include<iostream>
  2. #include<conio.h>
  3. #include<math.h>
  4.  
  5. using namespace std;
  6.  
  7. int main(){
  8.              int l=0;
  9.              double  numeros[500], j, aux, n, deses=0, coef=0, pos = n/2, suma=0, media=0, varia=0, amp=0;
  10.  
  11.              //Amplitud de Variación de los Datos
  12.  
  13.              cout<<"Digite el Numero de Elementos: ";
  14.              cin>>n;
  15.  
  16.              for(int i=0;i<n;i++){
  17.                      cout<<"digite un numero: "<<endl;
  18.                      cin>>numeros[i];
  19.              }
  20.              for(int i=0;i<n;i++){  //Ordenamiento
  21.                               for(int j=0;j<n-1;j++){
  22.                                       if(numeros[j]>numeros[j+1]){
  23.                                                                   aux = numeros[j];
  24.                                                                   numeros[j] = numeros[j+1];
  25.                                                                   numeros[j+1] = aux;
  26.                                                                   }
  27.                                       }
  28.                               }
  29.              for(int i=0;i<n;i++){
  30.              cout<<"Numeros en Orden: ";
  31.              cout<<" - "<<numeros[i]<<endl;
  32.              suma = suma + numeros[i];
  33.              amp =numeros[i-01]-numeros[0];
  34.              }
  35.  
  36.              media = (suma)/(n);
  37.              cout<<"El Rango es: "<<amp<<endl;        
  38.              cout<<"La Media Aritmetica es: "<<media<<endl;
  39.  
  40.              for(int i=0;i<n;i++){
  41.                      numeros[i]= numeros[i]- media;
  42.              cout<<"Desviacion: ";
  43.              cout<<" - "<<numeros[i]<<endl;
  44.              }
  45.  
  46.              for(int i=0;i<n;i++){
  47.                      numeros[i]= pow(numeros[i],2);
  48.              cout<<"Desviacion al Cuadrado: ";
  49.              cout<<" - "<<numeros[i]<<endl;
  50.              suma = suma + numeros[i];
  51.              }
  52.  
  53.              varia = (suma)/(n-1);
  54.              cout<<"Varianza: "<<varia<<endl;
  55.  
  56.              deses = sqrt(varia);
  57.              cout<<"Desviacion Estandar: "<<deses<<endl;
  58.  
  59.              coef = (deses*100)/media;
  60.              cout<<"Coeficiente de Variacion: "<<coef;
  61.              cout<<"% ";
  62.  
  63. getch();
  64. return 0;
  65. }
  66.  



« Última modificación: 16 Septiembre 2018, 01:44 am por #!drvy » En línea

ivancea96


Desconectado Desconectado

Mensajes: 3.410


ASMático


Ver Perfil WWW
Re: Ayuda en Programa basico sobre Medidas de Dispersion
« Respuesta #1 en: 2 Septiembre 2018, 17:01 pm »

Apunto un detalle: en la línea del if de donde ordena, haces: "numeros[j+1]".
Teniendo en cuenta que n es el número de elementos, y que j va de 0 a n-1 (n-1 incluído), al acceder a j+1 estás sobrepasando el total de elementos, y accediendo a una posición más.
Ese es el primer fallo grave que veo.


En línea

Sword9K

Desconectado Desconectado

Mensajes: 10


Ver Perfil
Re: Ayuda en Programa basico sobre Medidas de Dispersion
« Respuesta #2 en: 2 Septiembre 2018, 17:22 pm »

wow, el problema era que sobrepasaba, entonces si cambio arriba en for(int j=0;j<n-1;j++){    , creo que ya estaría. pero ahora uno de los problemas es el rango que no se como podría seleccionar el dato mayor y dato menor sin seleccionarlos todos.



aunque si en amp =numeros[i-01] cambio i por n me daría error de invalido.


Mod: Prohibido el doble o triple post. Usa el botón "Modificar".
« Última modificación: 16 Septiembre 2018, 01:43 am por #!drvy » En línea

MAFUS


Desconectado Desconectado

Mensajes: 1.479



Ver Perfil
Re: Ayuda en Programa basico sobre Medidas de Dispersion
« Respuesta #3 en: 2 Septiembre 2018, 17:58 pm »

¿Qué tal si modificas tu primer post y pones el código entre etiquetas geshi o code? Gracias.
En línea

while(is_alive(yourself)) {
    make_true(yourself, yourdreams);
}
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Ayuda en un programa basico
Programación C/C++
JOSE23 3 2,002 Último mensaje 21 Febrero 2011, 19:32 pm
por Pirata LOL
Ayuda en un programa basico
Programación C/C++
JOSE23 2 1,357 Último mensaje 23 Febrero 2011, 06:30 am
por leogtz
Ayuda programa matematico basico!!
Programación C/C++
prometheus48 6 1,949 Último mensaje 9 Octubre 2011, 07:12 am
por rir3760
ayuda un programa basico sencillo porfa
Programación Visual Basic
jenniyjavier 4 1,046 Último mensaje 17 Mayo 2014, 04:15 am
por Cj2009z
Medidas de Dispersión. Error
Programación C/C++
Sword9K 4 637 Último mensaje 12 Octubre 2018, 17:34 pm
por Sword9K
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines