Răspuns :
#include <iostream>
using namespace std; int a[101][101];int main(){ int n,i,j,x,k; cin>>n; x=1; // parcurgem paralel cu diagonala secundara k=1; while(k<=n) { for (j=1; j<=k; j++) for (i=1; i<=k; i++) if (j==k+1-i) { a[i][j]=x; x++; } k++; } // parcurgem pe diagonala secundara while(k<=(2*n-1)) { int p=2; for (j=p; j<=n; j++) for (i=p; i<=n; i++) if (j==k+1-i) { a[i][j]=x; x++; } p++; k++; } for(i=1; i<=n; i++) { for(j=1; j<=n; j++) cout<<a[i][j]<<" "; cout << endl; } return 0;}
using namespace std; int a[101][101];int main(){ int n,i,j,x,k; cin>>n; x=1; // parcurgem paralel cu diagonala secundara k=1; while(k<=n) { for (j=1; j<=k; j++) for (i=1; i<=k; i++) if (j==k+1-i) { a[i][j]=x; x++; } k++; } // parcurgem pe diagonala secundara while(k<=(2*n-1)) { int p=2; for (j=p; j<=n; j++) for (i=p; i<=n; i++) if (j==k+1-i) { a[i][j]=x; x++; } p++; k++; } for(i=1; i<=n; i++) { for(j=1; j<=n; j++) cout<<a[i][j]<<" "; cout << endl; } return 0;}