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


 


Tema destacado: ¿Eres nuevo? ¿Tienes dudas acerca del funcionamiento de la comunidad? Lee las Reglas Generales


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Sugerencias
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Sugerencias  (Leído 1,580 veces)
Gerik

Desconectado Desconectado

Mensajes: 24


Ver Perfil
Sugerencias
« en: 1 Septiembre 2010, 19:36 »

Código
  1. #include <conio>
  2. #include <iostream>
  3. #include <stdlib>
  4. #include <math>
  5.  
  6. class C
  7. {public:
  8.  int *c;
  9.  int r;
  10.  C(){c=new int [10];}
  11.  Union(int q[10],int p[10],int a,int b);
  12.  int suma(int q[10],int a);
  13.  double promedio(int a,int b);
  14.  double varianza(int a,int b);
  15.  double desviacion(int a);
  16. };
  17. main ()
  18.   {int a,z;
  19.    int *conjuntoA;
  20.    int *conjuntoB;
  21.    conjuntoA=new int [10];
  22.    conjuntoB=new int [10];
  23.    cout<<"Digite El Numero De Elementos Del Conjunto A: ";
  24.    cin>>a;
  25.    cout<<"Digite El Numero De Elementos Del Conjunto B: ";
  26.    cin>>z;
  27.    randomize();
  28.    cout<<"\nEl Conjunto A es : ";
  29.    for(int i=0;i<a;i++)
  30.       {conjuntoA[i]=random(100);
  31.        cout<<conjuntoA[i]<<" ";}
  32.    cout<<"\nEl Conjunto B es : ";
  33.    for(int j=0;j<z;j++)
  34.       {conjuntoB[j]=random(100);
  35.        cout<<conjuntoB[j]<<" ";}
  36.    C obj;
  37.    obj.Union(conjuntoA,conjuntoB,a,z);
  38.    cout<<"\nLa Suma De A es :"<<obj.suma(conjuntoA,a);
  39.    cout<<"\nLa Suma De B es :"<<obj.suma(conjuntoB,z);
  40.    cout<<"\nEl Promedio De A Es :"<<obj.promedio(obj.suma(conjuntoA,a),a);
  41.    cout<<"\nEl Promedio De B Es :"<<obj.promedio(obj.suma(conjuntoB,z),z);
  42.    cout<<"\nLa Varianza De A Es :"<<obj.varianza(obj.promedio(obj.suma(conjuntoA,a),a),a);
  43.    cout<<"\nLa Varianza De B Es :"<<obj.varianza(obj.promedio(obj.suma(conjuntoB,z),z),z);
  44.    cout<<"\nLa Varianza De A Es :"<<obj.desviacion(obj.varianza(obj.promedio(obj.suma(conjuntoA,a),a),a));
  45.    cout<<"\nLa Varianza De B Es :"<<obj.desviacion(obj.varianza(obj.promedio(obj.suma(conjuntoB,z),z),z));
  46.    getch();
  47.    }
  48. C::Union(int q[10],int p[10],int a,int b)
  49.   {for(int i=0;i<a;i++)
  50.       c[i]=q[i];
  51.    for(int i=0;i<b;i++)
  52.       {c[a+i]=p[i];}
  53.    cout<<"\nEl Conjunto Union De A y B Es : ";
  54.    for(int i=0;i<(a+b);i++)
  55.        {cout<<c[i]<<" ";}
  56.   return 0;}//Cierro Union
  57. int C::suma(int q[10],int a)
  58.    {r=0;
  59.     for(int i=0;i<a;i++)
  60.         {r+=q[i];}
  61.     return r;}//Cierro Suma
  62. double C::promedio(int a,int b)
  63.     {return a/b;}//Cierro Promedio
  64. double C::varianza(int a,int b)
  65.       {return a/(b-1);}
  66. double C::desviacion(int a)
  67.       {return sqrt(a);}
  68.  

lo que quiero es ver si hay otra forma de eliminar la info de r cada vez que llamo la funcion suma, ademas si hay sugerencias en otra parte del codigo se aceptan 


En línea

carlitos_jajajajaja

Desconectado Desconectado

Mensajes: 30


Ver Perfil
Re: Sugerencias
« Respuesta #1 en: 3 Septiembre 2010, 06:37 »

Veo unas cuantas fugas de memoria por ahi... Deberias buscar un poco acerca del operador new y el operador delete.


Podrias hacer que el metodo promedio realice la suma, y que no necesites usar directamente el metodo suma desde main, eso le daria a tu programa un sabor mas orientado a objetos :p

Lo mismo para varianza y desviacion estandar.


Y al menos que tu profesor(a) explicitamente te lo pida, no es recomendable usar las extensiones (no estandar) de Borland c en tus programas, es decir getch()/conio, usar main y procedimientos sin tipo de retorno


Se nota que entiendes bien la idea :D el codigo esta bien, funciona


Un ultimo consejo:  Declara los arreglos un poco mas grandes porque estan muy pequenos, es muy facil hacer que la memoria se corrompa en ese programa


En línea

Merodeo los foros, esperando el momento de decir algo inteligente...

Se necesita paciencia
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Sugerencias « 1 2 ... 5 6 »
Ingeniería Inversa
Shaddy 56 64,859 Último mensaje 22 Marzo 2013, 17:01
por fumioli
sugerencias distro
GNU/Linux
--bl455-- 0 763 Último mensaje 12 Febrero 2011, 06:22
por --bl455--
Injection SQL - sugerencias??
Hacking Ético
shingo_foros 1 2,070 Último mensaje 5 Junio 2011, 22:45
por Cleantesdeasso
Sugerencias!
Programación C/C++
MellaSystems 3 959 Último mensaje 14 Marzo 2015, 01:05
por MellaSystems
sugerencias?
Hacking Básico
dehyvis 0 775 Último mensaje 13 Noviembre 2015, 17:27
por dehyvis
Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines