Cerința
Scrieți un program care citește de la tastatură două numere naturale din intervalul [3,50]
, n
și m
, și elementele unui tablou bidimensional cu n
linii și m
coloane, numere naturale din intervalul [0,10
4
]
.
Programul modifică în memorie tabloul dat, atribuind valoarea elementului aflat pe ultima linie și pe ultima coloană a tabloului fiecărui element aflat pe conturul acestuia (pe prima linie, ultima linie, prima coloană, ultima coloană), 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
3 ≤ n,m ≤ 50
- elementele tabloului aparțin intervalului
[0,10
4
]
Exemplu
Intrare
5 4 0 5 2 11 3 2 10 2 7 3 1 4 4 5 0 12 8 13 7 5
Ieșire
5 5 5 5 5 2 10 5 5 3 1 5 5 5 0 5 5 5 5 5
#include <bits/stdc++.h> using namespace std; int n , m , a[51][51] , val; int main() { cin >> n >> m; for(int i = 1 ; i <= n ; ++i) for(int j = 1 ; j <= m ; ++j) cin >> a[i][j]; val = a[n][m]; for(int i = 1 ; i <= n ; ++i) { a[i][1] = val; a[i][m] = val; } for(int i = 1 ; i <= m ; ++i) { a[1][i] = val; a[n][i] = val; } for(int i = 1 ; i <= n ; ++i) { for(int j = 1 ; j <= m ; ++j) cout << a[i][j] << ' '; cout << endl; } return 0; }