Scrieti programul Pascal/C/C++ care construieste in memorie o matrice patratica cu n linii si n coloane formata numai din valori si 2 astfel incat elementele de pe diagonala secundara si cea principala sa fie egale cu 1 , elementele situate intre diagonalele matricei , in partea superioara si inferioara a acesteia , sa fie egale cu 1 , iar restul elementeleor din matrice sa fie egale cu . Valoare lui n (numar natural , 2<n<23) se citeste de la tastatura , iar matricea se va afisa pe ecran , cate o linie a matricei pe cate o linie a ecranului , cu spatii intre elementele fiecarei linii ( ca in exemplu ).

1 1 1 1 1

2 1 1 1 2

2 2 1 2 2

2 1 1 1 2

1 1 1 1 1

Rezolvare.  Secventa pseudocod urmatoare reprezinta o solutie posibila pentru construirea matricei:

pentru i=1 , n executa

daca i<n+1-i atunci x ← i ; y n+1-i

  altfel y i ; x ← n+1-i

sfarsit_daca

pentru j=1 , n executa

  daca x<=j and j<=y atunci a(ij) ← 1

       altfel a(ij)2

  sfarsit_daca

sfarsit_pentru

sfarsit_pentru