Ragazzi sto cercando di ordinare una matrice... es:
matrice di partenza:
3 2 1
4 6 5
deve diventare:
1 2 3
4 5 6;
ho provato a scrivere un programma che mi copia la matrice in un vettore, ordina il vettore e poi ricopia il vettore ordinato nella matrice...ma non va...ecco il codice


#include<iostream>
using namespace std;
void leggi_mat(int m[100][100], int &c, int&r);
void ordina(int *v,int n);
int main()
{int m[100][100];
int*v;
int n,r,c,k,i,j;
cout<<"r";
cin>>r;
cout<<"c";cin>>c;
n=r*c;
v=(int*)malloc (n*sizeof (int));
leggi_mat(m,r,c);
for(i=0;i<r;i++)
{for(j=0;j<c;j++)
v[k]=m[i][j];
k++;}
ordina(v,n);
for(i=0;i<r;i++)
{for(j=0;j<c;j++)
m[i][j]=v[k];
k++;
cout<<m[i][j]<<"\t";
cout<<endl;}







system("PAUSE");}

void leggi_mat(int m[100][100], int &c, int&r)
{int i,j;
for(i=0;i<r;i++)
for(j=0;j<c;j++)
{cout<<"m["<<i<<"]["<<j<<"]";
cin>>m[i][j];}}



void ordina(int *v,int n)
{int i,j,temp;
for(i=0;i<n-1;i++)
{for(j=0;j<n-i-1;i++)
if(v[j]>v[j+1])
{temp=v[i];
v[i]=v[i+1];
v[i+1]=temp;
}



}
}