• Viernes 15 de Noviembre de 2024, 05:12

Autor Tema:  buscar palabras en una matriz!  (Leído 5157 veces)

gerarca

  • Visitante
buscar palabras en una matriz!
« en: Lunes 11 de Abril de 2011, 21:01 »
0
saludos!! amigos estoy implementando un algoritmo que me permita buscar palabras en una matriz, ok. para este algoritmo hice:
Código: Text
  1.  
  2. string palabras[100];
  3. string cadena;
  4. char matriz[a][a]; // a son variables
  5.  
  6.  for( int x=0; x<cont_p; x++ )
  7.  {
  8.   char *q = strdup(palabras[x].c_str()); // apuntador para convertir la palabra de string a char
  9.  
  10.    for( int i=0; i<a; i++ )
  11.    {
  12.      for( int j=0; j<a; j++ )
  13.      {
  14.          if( matriz[i][j]==q[0] and matriz[i][j+1]==q[1] ) // comparo las 2 primeras letras de la palabra en la matriz
  15.          {            
  16.             for( int z=0; z<palabras[x].length(); z++ )
  17.               cadena.push_back(matriz[i][j+z]); // armo la palabra usando la matriz
  18.              
  19.             if( palabras[x] == cadena ) // si la palabra que busco es igual a la que se construyo arriba, la imprimo;
  20.               {
  21.                 cant++;
  22.                 cout << "palabras[" << x << "]: " << palabras[x]<< " cadena: " << cadena <<endl;
  23.               }
  24.              cadena = '';
  25.          }
  26.      }
  27.    }
  28. }
  29.  
  30.  
como pueden notar estoy agarrando cada palabra y  estoy buscando las 2 primeras letras(de la palabra) en la matriz, para esto le asigno a un apuntador a cada palabra, para luego ser comparada en la matriz y luego contruir la palabra.. y una ves construida la palabra con la matriz, esta la comparo con la palabra que estoy buscando y si es igual la imprimo..

Pero, esto que estoy implementando no me esta encontrando ninguna palabra, he revisado bien la matriz y el arreglo, y esta todo bien...  mi pregunta es que si estoy haciendo bien??
« última modificación: Miércoles 13 de Abril de 2011, 10:56 por gerarca »

m0skit0

  • Miembro de PLATA
  • *****
  • Mensajes: 2337
  • Nacionalidad: ma
    • Ver Perfil
    • http://fr33kk0mpu73r.blogspot.com/
Re: buscar palabras en una matriz!
« Respuesta #1 en: Martes 12 de Abril de 2011, 10:21 »
0
Yo creo que ya llevas suficiente tiempo en el foro como para usar las etiquetas de código
Código: C
  1.  

Estás usando C++, así que usa la clase string y deja de marearte con char*.

Saludos.

gerarca

  • Visitante
Re: buscar palabras en una matriz!
« Respuesta #2 en: Miércoles 13 de Abril de 2011, 05:27 »
0
amigo lo que pasa es que estoy haciendo una aplicación, esta aplicacion la estoy haciendo primero en c++, para luego adaptarla para que funcione en un cluster(pelicanHPC el que estoy), para el cluster debo usar la libreria MPI, esta libreria es algo antigua y por lo tanto me estoy limitando a usar algunas librerías ya que no me van a funcionar con MPI, si tienes alguna sugerencia con respecto a mi duda te lo agradezco de verdad!   :good:


saludos

m0skit0

  • Miembro de PLATA
  • *****
  • Mensajes: 2337
  • Nacionalidad: ma
    • Ver Perfil
    • http://fr33kk0mpu73r.blogspot.com/
Re: buscar palabras en una matriz!
« Respuesta #3 en: Miércoles 13 de Abril de 2011, 08:47 »
0
Miraré tu código cuando uses las etiquetas de código, que ya va siendo hora  ^_^