SHARE
TWEET

Untitled

a guest Apr 22nd, 2019 97 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. #include<stdio.h>
  2. #define N 8
  3. #define K 8
  4. int main(void)
  5. {
  6.     int x, y; // координаты лабиринта
  7.     int maze[N][K];
  8.     for (x = 0; x < N; x++)
  9.     {
  10.         for (y = 0; y < K; y++)
  11.             scanf_s("%d ",&maze[x][y]);
  12.     }
  13.     x = 1; y = 0; // координаты старта
  14.     maze[x][y] = 2;
  15.     do
  16.     {
  17.         if (maze[x + 1][y] == 0)
  18.         {
  19.             x++;
  20.             maze[x][y] = 2;
  21.         }
  22.         else
  23.         {
  24.             if (maze[x - 1][y] == 0)
  25.             {
  26.                 x--;
  27.                 maze[x][y] = 2;
  28.             }
  29.             else
  30.             {
  31.                 if (maze[x][y + 1] == 0)
  32.                 {
  33.                     y++;
  34.                     maze[x][y] = 2;
  35.                 }
  36.                 else
  37.                 {
  38.                     if (maze[x][y - 1] == 0)
  39.                     {
  40.                         y--;
  41.                         maze[x][y] = 2;
  42.                     }
  43.                     else
  44.                     {
  45.                         if ((maze[x + 1][y] != 0) && (maze[x - 1][y] != 0) && (maze[x][y - 1] != 0) && (maze[x][y + 1] == 2))
  46.                         {
  47.                             maze[x][y] = 3;
  48.                             y++;
  49.                         }
  50.                         else
  51.                         {
  52.                             if ((maze[x + 1][y] != 0) && (maze[x - 1][y] != 0) && (maze[x][y - 1] == 2) && (maze[x][y + 1] != 0))
  53.                             {
  54.                                 maze[x][y] = 3;
  55.                                 y--;
  56.                             }
  57.                             else
  58.                             {
  59.                                 if ((maze[x + 1][y] != 0) && (maze[x - 1][y] == 2) && (maze[x][y - 1] != 0) && (maze[x][y + 1] != 0))
  60.                                 {
  61.                                     maze[x][y] = 3;
  62.                                     x--;
  63.                                 }
  64.                                 else
  65.                                 {
  66.                                     if ((maze[x + 1][y] == 2) && (maze[x - 1][y] != 0) && (maze[x][y - 1] != 0) && (maze[x][y + 1] != 0))
  67.                                     {
  68.                                         maze[x][y] = 3;
  69.                                         x++;
  70.                                     }
  71.                                 }
  72.                             }
  73.                         }
  74.                     }
  75.                 }
  76.             }
  77.         };
  78.     } while ((x != N-1) && (y != K-1));
  79.     printf("\n");
  80.     printf("\n");
  81.     printf("\n");
  82.     for (x = 0; x < N; x++)
  83.     {
  84.         for (y = 0; y < K; y++)
  85.             printf("%d ", maze[x][y]);
  86.         printf("\n");
  87.     }
  88.  
  89.     return 0;
  90. }
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