Cerinţa
Scrieţi un program care citeşte de la tastatură trei numere naturale n
, a
, b
şi construieşte în memorie o matrice cu n
linii şi n
coloane formată numai din valori 0
, 1
, 2
, 3
şi 4
astfel încât: elementele aflate pe linia a
sau coloana b
sunt egale cu 0
, cele aflate deasupra liniei a
şi la stânga coloanei b
sunt egale cu 1
, cele aflate deasupra liniei a
şi la dreapta coloanei b
sunt egale cu 2
, cele aflate sub linia a
şi la stânga coloanei b
sunt egale cu 3
, iar elementele aflate sub linia a
şi la dreapta coloanei b
sunt egale cu 4
.
Date de intrare
Programul citește de la tastatură numerele n
, a
şi b
.
Date de ieşire
Programul afișează pe ecran matricea construită, 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
2≤n≤24
1<a<n
1<b<n
- liniile şi coloanele sunt numerotate de la
1
Exemplu
Intrare
5 4 3
Ieșire
1 1 0 2 2 1 1 0 2 2 1 1 0 2 2 0 0 0 0 0 3 3 0 4 4
#include <bits/stdc++.h> using namespace std; int main() { int n , a , b; cin >> n >> a >> b; for(int i = 1 ; i <= n ; ++i) { for(int j = 1 ; j <= n ; ++j) { if(i == a || j == b) cout << 0 <<" "; if(i < a && j < b) cout << 1 <<" "; if(i > a && j < b) cout << 3 <<" "; if(i < a && j > b) cout << 2 <<" "; if(i > a && j > b) cout << 4 <<" " ; } cout << endl; } }