Foro de elhacker.net

Programación => Programación C/C++ => Mensaje iniciado por: sjav96 en 14 Mayo 2016, 22:31 pm



Título: ordenamiento de matrices (arreglos)
Publicado por: sjav96 en 14 Mayo 2016, 22:31 pm
Hola!
Queria consultarles acerca del ordenamiento de matrices, especificamente el metodo burbuja.

Use un codigo y me ordena bien de manera ascendente, pero cuando lo quiero hacer para que sea descendente el orden me deja en 0 el primer elemento.

Código
  1. for ( k=1; k<=m*n; k++ )
  2.    {
  3.    for ( i=0; i<m; i++ )
  4.        {
  5.        for ( j=0; j<n; j++ )
  6.            {
  7.            if ( mat[i][j+1] > mat[i][j] )
  8.               {
  9.               aux=mat[i][j];
  10.               mat[i][j]=mat[i][j+1];
  11.               mat[i][j+1]=aux;
  12.               }
  13.            }
  14.        }
  15.    }
  16.  
ese es el codigo que use.

Si me podrian aclarar por que pasa eso y la manera correcta de hacer seria genial.
Gracias!


Mod: Los códigos deben ir en etiquetas GeSHi, no escribir el título en minúsculas


Título: Re: ORDENAMIENTO DE MATRICES (ARREGLOS)
Publicado por: twins en 15 Mayo 2016, 05:31 am
Debes copiar el codigo completo para hacer las pruebas incluido el main, saludos.


Título: Re: ordenamiento de matrices (arreglos)
Publicado por: ivancea96 en 15 Mayo 2016, 14:29 pm
Si 'n' es el tamaño de la segunda dimensión de la matriz 'mat', entonces dará problemas al acceder a j+1 en el if. Para ello, tendrás que poner ne el for: "j+1<n".