Foro de elhacker.net

Programación => Programación C/C++ => Mensaje iniciado por: Ivancamilo en 28 Agosto 2016, 15:15 pm



Título: Como recorrer una matriz en forma de culebrita ?
Publicado por: Ivancamilo en 28 Agosto 2016, 15:15 pm
Hola buenos días, me podrían indicar como puedo recorrer una matriz  de m * n donde m y n son datos que ingresa el usuario, la forma en que se debe de recorrer la matriz es la siguiente, tomando m y n como 3 * 3 las posiciones en el orden en que debe de recorrerse seria el siguiente:
Matriz[0][0]=4
Matriz[1][0]=11
Matriz[0][1]=10
Matriz[0][2]=9
Matriz[1][1]=13
Matriz[2][0]=12
Matriz[2][1]=7
Matriz[1][2]=6
Matriz[2][2]=3
Es que en verdad no entiendo cómo hacerlo, y e  intento y no he conseguida hacer esas secuencia con los for que habitualmente se recorre una matriz.

Código
  1. #include <iostream>
  2. using namespace std;
  3.  
  4. int main() {
  5. int f,c;
  6. cout<<"digite el numero de filas"<<endl;
  7. cin>>f;
  8. cout<<"digite el numero de colomnas"<<endl;
  9. cin>>c;
  10. int matriz[f][c];
  11. //lleno la matriz en forma de culebrita
  12. for(int i=0;i<f;i++){
  13. for(int j=0;j<c;j++){
  14.  
  15. cin>>matriz[i][j];
  16.  
  17. }
  18. }
  19. // termino de llenar la matriz
  20.  
  21. //imprimo la matriz
  22. for(int i=0;i<f;i++){
  23. for(int j=0;j<c;j++){
  24. if(j==(c-1)){
  25. cout<<matriz[i][j]<<"\n";
  26. }else{
  27. cout<<matriz[i][j]<<" ";
  28. }
  29.  
  30. }
  31. }
  32. // termino de imprimir la matriz
  33.  
  34. return 0;
  35. system("pause");
  36. }


Título: Re: Como recorrer una matriz en forma de culebrita ?
Publicado por: AlbertoBSD en 28 Agosto 2016, 20:27 pm
No se le ve una forma tan obvia de recorrerlos.
Lo que mas se aproxima es poder porgramar un movimiento en diagonal y cada que llegue a alguno de los límites programar con suba o baje segun sea el caso.

El detalle es que los limetes crecen y decresen. Lo interesante seria programar ese movimiento para un arrar bidimensional de cualquier Altura y anchura...


Saludos


Título: Re: Como recorrer una matriz en forma de culebrita ?
Publicado por: Ivancamilo en 28 Agosto 2016, 21:55 pm
Mira algo así es la forma en que se debe de llenar la matriz.
(http://i.imgur.com/Y2zdDgR.png)