Foros del Web » Programación para mayores de 30 ;) » C/C++ »

Array dinamicas Ayuda plis!

Estas en el tema de Array dinamicas Ayuda plis! en el foro de C/C++ en Foros del Web. Hola y gracias de antemano; mi problema es el siguiente. Tengo la funcion: @import url("http://static.forosdelweb.com/clientscript/vbulletin_css/geshi.css"); Código C++: Ver original void histograma ( TaulaParaula t , ...
  #1 (permalink)  
Antiguo 25/02/2011, 10:23
Avatar de mihina  
Fecha de Ingreso: mayo-2010
Ubicación: Girona
Mensajes: 32
Antigüedad: 13 años, 11 meses
Puntos: 1
Exclamación Array dinamicas Ayuda plis!

Hola y gracias de antemano; mi problema es el siguiente.

Tengo la funcion:

Código C++:
Ver original
  1. void histograma(TaulaParaula t,int n,int pllarga)
  2. {
  3.     int *hist = NULL;
  4.     int pos;
  5.  
  6.     hist = new int[pllarga];
  7.  
  8.     for(int i=0; i<pllarga; i++)
  9.     {
  10.         hist[i]=0;
  11.     }
  12.     for(int i=0; i<n; i++)
  13.     {
  14.         hist[t[i].llarg]=hist[t[i].llarg]+1;
  15.     }
  16.  
  17.     delete [] hist;
  18.     hist=NULL;
  19. }

pllarga es la grandaria de la array.

Primer pongo en la array todos los valores a cero.
En el siguiente for t[i].llarg es un struc donde se guarda la largada de una palabra ejemplo: hola ->4. struc tiene n componentes.
Y lo que kiero es incrementar 1 a la array correspondiente.

ejemplo:
t[i].llarg=4
pues en hist[4] incrementar 1.

Por eso he hecho hist[t[i].llarg]=hist[t[i].llarg]+1;

pero no me va siempre me muestra 0.

Sabeis xk? Gracias!
  #2 (permalink)  
Antiguo 25/02/2011, 15:44
Avatar de mihina  
Fecha de Ingreso: mayo-2010
Ubicación: Girona
Mensajes: 32
Antigüedad: 13 años, 11 meses
Puntos: 1
Respuesta: Array dinamicas Ayuda plis! Resuelto!!!

Ya lo he conseguido: dejo la solución por si a alguien le interesa en un futuro:

Código C++:
Ver original
  1. bool histograma(TaulaParaula t,int n,int pllarga)
  2. {
  3.     int *hist=NULL;
  4.     bool decreixent=true;
  5.  
  6.     hist = new int[pllarga];
  7.  
  8.     for(int i=0; i<pllarga; i++)
  9.     {
  10.         hist[i]=0;
  11.     }
  12.     for(int i=0; i<n; i++)
  13.     {
  14.         hist[t[i].llarg-1]=hist[t[i].llarg-1]+t[i].rep;
  15.     }
  16.     for(int i=0; i<pllarga; i++)
  17.     {
  18.         cout <<"["<<i+1<<"]"<<" - "<< hist[i] << endl;
  19.     }
  20. }

Etiquetas: dinamicas, plis
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 14:55.