Informatică, întrebare adresată de jut, 9 ani în urmă

Cerinţa
Se dă o matrice cu n linii şi m coloane şi elemente numere naturale. Ordonați crescător elementele de pe fiecare linie a matricei și apoi afişați matricea.

Date de intrare
Programul citește de la tastatură numerele n şi m, iar apoi n*m numere naturale, separate prin spaţii, reprezentând elementele matricei, linie cu linie.

Date de ieşire
Programul afișează pe ecran matricea modificată, câte o linie a matricei pe câte o linie a ecranului, elementele fiecărei linii fiind separate prin câte un spaţiu.

Restricţii şi precizări
1 ≤ m,n ≤ 100
elementele matricei vor fi mai mici decât 10000
Exemplu
Date de intrare

4 6
4 20 15 23 18 9
1 8 23 22 14 18
17 18 13 18 12 15
3 18 8 20 12 5
Date de ieșire

4 9 15 18 20 23
1 8 14 18 22 23
12 13 15 17 18 18
3 5 8 12 18 20
in c++ va rog
#619 la pbinfo

Răspunsuri la întrebare

Răspuns de stassahul
12
#include <bits/stdc++.h>

using namespace std;

int n,m,a[101][101];

int main()
{

   cin >> n >> m;

   for(int i=1;i<=n;i++)
    for(int j=1;j<=m;j++)
     cin >> a[i][j];

   for(int i=1;i<=n;i++)
    for(int j=1;j<m;j++)
     for(int k=j+1;k<=m;k++)
      if(a[i][j]>a[i][k]) swap(a[i][j],a[i][k]);

   for(int i=1;i<=n;i++)
   {
       for(int j=1;j<=m;j++)
        cout << a[i][j] << " ";
       cout << endl;
   }

   return 0;

}
Răspuns de SaReMaRe
4
Cam asta e:
#include <bits/stdc++.h>

using namespace std;

int n,m,a[101][101];

int main()
{

   cin >> n >> m;

   for(int i=1;i<=n;i++)
    for(int j=1;j<=m;j++)
     cin >> a[i][j];

   for(int i=1;i<=n;i++)
    for(int j=1;j<m;j++)
     for(int k=j+1;k<=m;k++)
      if(a[i][j]>a[i][k]) swap(a[i][j],a[i][k]);

   for(int i=1;i<=n;i++)
   {
       for(int j=1;j<=m;j++)
        cout << a[i][j] << " ";
       cout << endl;
   }

   return 0;

}
Alte întrebări interesante