Se consideră tabloul bidimensional A[1..n,1..m] cu elemente numere întregi. Să se compună un program care va rearanja liniile matricei A astfel încât elementele de pe prima coloană să fie în ordine crescătoare prin metoda bulelor, fără a folosi o nouă matrice. Matricea modificată se va afişa pe ecran.
Răspunsuri la întrebare
Răspuns de
0
#include <bits/stdc++.h>
using namespace std;
int n,m,i,j,k,aux,a[105][105],v[105],x[105];
bool ok;
int main()
{
cin >> n >> m;
for(i=1;i<=n;i++)
for(j=1;j<=m;j++)
{
cin>>a[i][j];
if(j == 1) v[i] = a[i][j], x[i] = v[i];
}
// sort(v+1,v+n+1);
do
{
ok=true;
for(i=1;i<n;i++)
if(v[i]<v[i+1])
{
aux=v[i];
v[i]=v[i+1];
v[i+1]=aux;
ok=false;
}
} while (!ok);
for(i=1;i<=n;i++)
{
for(j=1;j<=m;j++)
for(k=1;k<=n;k++)
if(v[k]==x[i]) {cout<<a[k][j]<<" ";break;}
cout<<'\n';
}
return 0;
}
using namespace std;
int n,m,i,j,k,aux,a[105][105],v[105],x[105];
bool ok;
int main()
{
cin >> n >> m;
for(i=1;i<=n;i++)
for(j=1;j<=m;j++)
{
cin>>a[i][j];
if(j == 1) v[i] = a[i][j], x[i] = v[i];
}
// sort(v+1,v+n+1);
do
{
ok=true;
for(i=1;i<n;i++)
if(v[i]<v[i+1])
{
aux=v[i];
v[i]=v[i+1];
v[i+1]=aux;
ok=false;
}
} while (!ok);
for(i=1;i<=n;i++)
{
for(j=1;j<=m;j++)
for(k=1;k<=n;k++)
if(v[k]==x[i]) {cout<<a[k][j]<<" ";break;}
cout<<'\n';
}
return 0;
}
skyletsky:
in turbo pascal se poate?
Alte întrebări interesante
Matematică,
8 ani în urmă
Matematică,
8 ani în urmă
Geografie,
8 ani în urmă
Limba română,
9 ani în urmă
Ed. tehnologică,
9 ani în urmă
Matematică,
9 ani în urmă
Limba română,
9 ani în urmă