Advertisement
TwITe

Untitled

Jul 20th, 2017
71
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.27 KB | None | 0 0
  1. //goo.gl/WMVcCM
  2. #include <iostream>
  3. #include <iomanip>
  4. using namespace std;
  5.  
  6. int main()
  7. {
  8.     int n, m;
  9.     cin >> n >> m;
  10.     int arr[100][100];
  11.     int count = 0;
  12.     int k = 0;
  13.     for ( ; ;) {
  14.         //вправо
  15.         for (int i = k; i <= i; i++) {
  16.             for (int j = k; j < m - k; j++) {
  17.                     arr[i][j] = ++count;
  18.                     if (count >= n * m) {
  19.                         break;
  20.                     }
  21.             }
  22.             break;
  23.         }
  24.         if (count >= n * m) {
  25.             break;
  26.         }
  27.         //вниз
  28.         for (int j = m - 1 - k; j <= m - 1 - k; j++) {
  29.             for (int i = k + 1; i < n - 1 - k; i++) {
  30.                     arr[i][j] = ++count;
  31.                     if (count >= n * m) {
  32.                         break;
  33.                     }
  34.             }
  35.             break;
  36.         }
  37.         if (count >= n * m) {
  38.             break;
  39.         }
  40.         //влево
  41.         for (int i = n - 1 - k; i <= n - 1 - k; i++) {
  42.             for (int j = m - 1 - k; j > k; j--) {
  43.                     arr[i][j] = ++count;
  44.                     if (count >= n * m) {
  45.                         break;
  46.                     }
  47.                 }
  48.             break;
  49.         }
  50.         if (count >= n * m) {
  51.             break;
  52.         }
  53.         //вверх
  54.         for (int j = k; j >= k; j++) {
  55.             for (int i = n - 1 - k; i > k; i--) {
  56.                 arr[i][j] = ++count;
  57.                 if (count >= n * m) {
  58.                     break;
  59.                 }
  60.             }
  61.             break;
  62.         }
  63.         if (count >= n * m) {
  64.             break;
  65.         }
  66.         k++;
  67.     }
  68.     for (int i = 0; i < n; i++) {
  69.         for (int j = 0; j < m; j++) {
  70.             cout << setw(4) << arr[i][j];
  71.         }
  72.         cout << endl;
  73.     }
  74.     return 0;
  75. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement