Răspuns :
Răspuns:
#include <iostream>
using namespace std;
int a[100][100],n,m,i,j;
void citire(int a[100][100],int &n,int &m)
{
cin>>n>>m;
for(i=1; i<=n; i++)
for(j=1; j<=m; j++)
cin>>a[i][j];
}
int suma(int x)
{
int s=0;
while(x)
{
s=s+x%10;
x=x/10;
}
return s;
}
void ordonare(int a[100][100],int n,int m)
{
int v[n],jj,aux;
for(j=1; j<=m; j++)
{
for(i=1; i<=n; i++)
v[i]=suma(a[i][j]);
for(i=1; i<=n; i++)
for(jj=i+1; jj<=n; jj++)
if(v[i]>v[jj] || (v[i]==v[jj] && a[i][j]>a[jj][j]))
{
aux=a[i][j];
a[i][j]=a[jj][j];
a[jj][j]=aux;
aux=v[i];
v[i]=v[jj];
v[jj]=aux;
}
}
}
void afisare(int a[100][100],int n,int m)
{
for(i=1; i<=n; i++)
{
for(j=1; j<=m; j++)
cout<<a[i][j]<<" ";
cout<<endl;
}
}
int main()
{
citire(a,n,m);
ordonare(a,n,m);
afisare(a,n,m);
return 0;
}
Explicație:
Vă mulțumim că ați vizitat site-ul nostru dedicat Informatică. Sperăm că informațiile oferite v-au fost de ajutor. Dacă aveți întrebări sau nevoie de asistență suplimentară, nu ezitați să ne contactați. Vă așteptăm cu drag data viitoare și nu uitați să ne adăugați la favorite!