Заполнение матрицы по спирали - C# (188129)

Узнай цену своей работы

Формулировка задачи:

При заполнении матрицы 10 на 8 выдаёт ошибку, помогите исправить
  int n = Convert.ToInt32(Console.ReadLine());
            int n1 = Convert.ToInt32(Console.ReadLine());
            int c = 0, s = 0;
            int dirch = 0, dx = 1, dy = 0;
            int[,] m = new int[n, n1];
            int x = n;
            Random rand = new Random();
            for (int i = 0; i < n*n1; i++)
            {
                m[c, s] = i + 1;
                if (--x == 0)
                {
                    x = n1 * (dirch % 2) + n * ((dirch + 1) % 2) - (dirch / 2 - 1) - 2;
                    int temp = dx;
                    dx = -dy;
                    dy = temp;
                    dirch++;
                }
                c += dx;
                s += dy;
            }
            for (int i = 0; i < n; i++)
             {
                 for (int j = 0; j < n1; j++)
                 {
                     Console.Write(m[i, j] + " ");
                 }
             Console.WriteLine();
             }
            Console.ReadKey();
        }

Решение задачи: «Заполнение матрицы по спирали»

textual
Листинг программы
m[c, s] = i + 1;

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

6   голосов , оценка 4.167 из 5