SHARE
TWEET

Untitled

a guest Feb 21st, 2019 61 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1.  
  2. #include <iostream>
  3.  
  4. using namespace std;
  5.  
  6. int main() {
  7.     int N;
  8.     cin >> N;
  9.     int m[51][51];
  10.     int i = 1;
  11.     int j = 1;
  12.     int linie_inceput = i;
  13.     int coloana_inceput = j;
  14.     int linie_sfarsit = N;
  15.     int coloana_sfarsit = N;
  16.     int celule_parcurse = 0;
  17.     for (int i=1;i<=N;i++){
  18.         for (int j=1;j<=N;j++){
  19.             m[i][j]=1;
  20.         }
  21.     }
  22.     for (int i = 1; i <= N; i++)
  23.     {
  24.         m[i][i] = 0;                            //diagonala principala
  25.         m[i][N - i + 1] = 0;                    //diagonala secundara
  26.     }
  27.     while (celule_parcurse < N*N)
  28.     {
  29.         for (int j = coloana_inceput; j <= coloana_sfarsit; j++)
  30.         {
  31.             if (celule_parcurse < N*N && m[linie_inceput][j] != 0)
  32.             {
  33.                 m[linie_inceput][j] = 1;
  34.             }
  35.             ++celule_parcurse;
  36.         }
  37.  
  38.         for (int i = linie_inceput + 1; i <= linie_sfarsit; i++)
  39.         {
  40.             if (celule_parcurse < N*N && m[i][coloana_sfarsit] != 0)
  41.             {
  42.                 m[i][coloana_sfarsit] = 2;
  43.                
  44.             }
  45.             ++celule_parcurse;
  46.         }
  47.  
  48.         for (int j = coloana_sfarsit - 1; j >= coloana_inceput; j--)
  49.         {
  50.             if (celule_parcurse < N*N && m[linie_sfarsit][j] != 0)
  51.             {
  52.                 m[linie_sfarsit][j] = 3;
  53.             }
  54.             ++celule_parcurse;
  55.         }
  56.  
  57.         for (int i = linie_sfarsit - 1; i > linie_inceput; i--)
  58.         {
  59.             if (celule_parcurse < N*N && m[i][coloana_inceput] != 0)
  60.             {
  61.                 m[i][coloana_inceput] = 4;
  62.                
  63.             }
  64.             ++celule_parcurse;
  65.         }
  66.         ++coloana_inceput;
  67.         ++linie_inceput;
  68.         --coloana_sfarsit;
  69.         --linie_sfarsit;
  70.     }
  71.     for (int i = 1; i <= N; i++)
  72.     {
  73.         for (int j = 1; j <= N; j++)
  74.         {
  75.             cout << m[i][j] << ' ';
  76.         }
  77.         cout << '\n';
  78.     }
  79.     return 0;
  80. }
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
 
Top