403
Cerința
Scrieți un program care citește de la tastatură un număr natural par n (n∈[2,50]) și elementele unui tablou bidimensional cu n linii și n coloane, numere reale, apoi transformă tabloul în memorie, inserând o linie nouă, la mijlocul său, valoarea fiecărui element al acesteia fiind egală cu media aritmetică a elementelor aflate pe coloana corespunzătoare lui în tabloul citit. Tabloul obținut se afișează pe ecran, 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ă numărul n, iar apoi cele n • n elemente ale tabloului.
Date de ieșire
Programul va afișa pe ecran elementele tabloului modificat, conform cerinței.
Restricții și precizări
- valorile afișate sunt considerate corecte dacă diferența în valoare absolută dintre fiecare element afișat și cel corect este mai mică decât
0.001
Exemplu
Intrare
4 1.5 0.75 3 1.2 2.75 1.25 2.25 1.5 4.5 1.15 3 4.5 0.25 0.85 1.75 3
Ieșire
1.5 0.75 3 1.2 2.75 1.25 2.25 1.5 2.25 1 2.5 2.55 4.5 1.15 3 4.5 0.25 0.85 1.75 3
#include <bits/stdc++.h>
using namespace std;
double a[51][51];
int main()
{
int n;
cin >> n;
for(int i = 1 ; i <= n ; ++i)
for(int j = 1 ; j <= n ; ++j)
cin >> a[i][j];
double v[51];
for(int i = 1 ; i <= n ; ++i)
for(int j = 1 ; j <= n ; ++j)
v[j]+=(a[i][j]*100000);
for(int i = 1 ; i <= n ; ++i)
v[i]/=(n*100000);
for(int i = 1 ; i <= n/2 ; ++i)
{
for(int j = 1 ; j <= n ; ++j)
cout << a[i][j] << ' ';
cout << endl;
}
for(int i = 1 ; i <= n ; ++i)
cout << v[i] << ' ';
cout << endl;
for(int i = n/2 + 1 ; i <= n ; ++i)
{
for(int j = 1 ; j <= n ; ++j)
cout << a[i][j] << ' ';
cout << endl;
}
return 0;
}
Comentarii