Matrici Patratice

Scrieti un program C/C++ care citeste de la tastatura un numar natural n ( 0<n<=23) si apoi construieste in memorie o matrice cu n linii si n coloane,formata din numere naturale nenule mai mici sau egale cu n,astfel incat sa nu existe doua linii cu aceeasi suma a elementelor si nici doua coloane cu aceeasi suma a elementelor.
Exemplu:daca n=3 atunci o solutie posibila este urmatoarea matrice:
1 1 1
1 1 2
1 2 3


 
  1.  
  2. #include<iostream.h>
  3. void main()
  4. {
  5.       int a[23][23],n,i,j,x=1;
  6.  
  7.       cout<<"n=";
  8.       cin >> n;
  9.  
  10.          for (i=1; i<=n; i++)
  11.              for (j=1; j<=n; j++)
  12.                      a[i][j]=1;
  13.  
  14.         for (i=2; i<=n; i++)
  15.         {
  16.              for (j=1; j<=x; j++)
  17.                      a[i][j]++;
  18.              x++;
  19.         }
  20.  
  21.        for (i=1; i<=n; i++)
  22.         {      for (j=1; j<=n; j++)
  23.                      cout<<a[i][j]<<" ";
  24.                  cout<<endl;
  25.         }
  26. }
  27.  

Pentru n=3
1 1 1
2 1 1
2 2 1


User avatar

 
Comments