SoloCodigo

Programación General => C/C++ => C++ Builder => Mensaje iniciado por: jasj_20 en Miércoles 28 de Mayo de 2008, 21:33

Título: Formas De Recorrido De Una Matriz??
Publicado por: jasj_20 en Miércoles 28 de Mayo de 2008, 21:33
Hola todos.. soy nuevo aca...

necesito d su ayuda..

stoy buscando informacion sobre las formas de recorrido de una matriz en C++

eje,, por filas, por columnas, diagonal...

+

dejen link.. pero porfa ayudenme

gracias.............
Título: Re: Formas De Recorrido De Una Matriz??
Publicado por: el_shanky en Jueves 29 de Mayo de 2008, 05:37
Bueno para usar matrices y recorrerlas yo usaba un vector de vectores. Para esto usaba las famosas STL (standar template library) y su objeto vector ya que posee iteradores los que nos permite posicionarlos en cualquier parte del vector y recorrerlo.

Acá te dejo un ejemplito que hice recin para ver que tan oxidado estaba! jajaja Lo que hago es crear una matriz de 3x3 (uso funcion push_back de las stl) y luego la recorro con 2 while anidados.

Código: Text
  1.  
  2. vector<vector<int> > V;//creo un vector de vectores (matriz)
  3.  
  4. //creo 3 vectores para meter dentro del vector de vectores
  5. vector<int> v1;
  6. v1.push_back(1);
  7. v1.push_back(2);
  8. v1.push_back(3);
  9. V.push_back(v1);
  10.  
  11. vector<int> v2;
  12. v2.push_back(4);
  13. v2.push_back(5);
  14. v2.push_back(6);
  15. V.push_back(v2);
  16.  
  17. vector<int> v3;
  18. v3.push_back(7);
  19. v3.push_back(8);
  20. v3.push_back(9);
  21. V.push_back(v3);
  22. /*obtengo una matriz de 3x3 de la forma
  23.         1 2 3
  24.         4 5 6
  25.         7 8 9
  26. */
  27.  
  28. //de aquí me manejo mediante iteradores
  29. vector<vector<int> >::iterator p=V.begin();
  30. vector<int>::iterator q;
  31.  
  32. while(p!=V.end()){ //recorro la matriz y la voy mostrando con los iteradores
  33.         vector<int> aux=*p;
  34.         q=aux.begin();
  35.  
  36.         while(q!= aux.end()){
  37.                 cout << *q;
  38.         q++;
  39.         }//end while anidado
  40. p++;
  41. }//end primer while
  42.  
  43. getchar();
  44.  
  45.  
  46.  

Para usar el vector de las STL tebemos incluir

Código: Text
  1.  
  2. #include <vector.h>
  3.  

y no olvidarse del

Código: Text
  1. #include <iostream.h>
  2.  

para el cout ya que pertence a este...

Salu2 man y spero que te sirva de algo!