Cerința
Scrieți un program care citește de la tastatură două numere naturale din intervalul [2,50], n și m, și elementele unui tablou bidimensional cu n linii și m coloane, numere naturale distincte din intervalul [0,104].
Programul interschimbă valoarea minimă din ultima coloană a tabloului cu valoarea minimă din prima coloană a tabloului, apoi afișează pe ecran tabloul modificat, câte o linie a tabloului pe câte o linie a ecranului, elementele fiecărei linii fiind separate prin câte un spațiu.
Date de intrare
Programul citește de la tastatură numerele n m, iar apoi cele n • m elemente ale tabloului.
Date de ieșire
Programul va afișa pe ecran elementele tabloului modificat, conform cerinței.
Restricții și precizări
2 ≤ n,m ≤ 50
elementele tabloului aparțin intervalului [0,104]
Exemplu
Intrare
4 3
7 5 19
3 8 4
23 6 1
10 2 9
Ieșire
7 5 19
1 8 4
23 6 3
10 2 9
O rezolvare cat mai simpla va rog.
Răspunsuri la întrebare
Răspuns de
3
Răspuns:
Explicație:
#include <iostream>
using namespace std;
int n,m,i,j,lp,lu,minp,minu, v[50][50];
int main()
{
cin >> n >> m;
for (i=0; i<n; ++i)
for (j=0; j<m; ++j)
cin >> v[i][j];
minp=v[0][0]; lp=0;
for (i=1; i<n; ++i)
if (v[i][0]<minp)
{
minp=v[i][0]; lp=i;
}
minu=v[0][m-1]; lu=0;
for (i=1; i<n; ++i)
if (v[i][m-1]<minu)
{
minu=v[i][m-1]; lu=i;
}
int t=v[lp][0];
v[lp][0]=v[lu][m-1];
v[lu][m-1]=t;
for (i=0; i<n; ++i)
{
for (j=0; j<m; ++j)
cout << v[i][j] << " ";
cout << "\n";
}
}
Alte întrebări interesante
Matematică,
8 ani în urmă
Matematică,
8 ani în urmă
Limba română,
8 ani în urmă
Informatică,
8 ani în urmă
Geografie,
8 ani în urmă
Matematică,
9 ani în urmă
Matematică,
9 ani în urmă