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


 


Tema destacado: [AIO elhacker.NET 2015] Compilación herramientas análisis y desinfección malware


+  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,514 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,195 Último mensaje 22 Marzo 2013, 17:01
por fumioli
sugerencias distro
GNU/Linux
--bl455-- 0 719 Último mensaje 12 Febrero 2011, 06:22
por --bl455--
Injection SQL - sugerencias??
Hacking Ético
shingo_foros 1 2,030 Último mensaje 5 Junio 2011, 22:45
por Cleantesdeasso
Sugerencias!
Programación C/C++
MellaSystems 3 896 Último mensaje 14 Marzo 2015, 01:05
por MellaSystems
sugerencias?
Hacking Básico
dehyvis 0 744 Último mensaje 13 Noviembre 2015, 17:27
por dehyvis
Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines