Вывести элементы матрицы по спирали - C#
Формулировка задачи:
Помогите решить пожалуйста на С#
Дана квадратная матрица A порядка M (M — нечетное число). Начиная с элемента A1,1 и перемещаясь по часовой стрелке, вывести все ее элементы по спирали: первая строка, последний столбец, последняя строка в обратном порядке, первый столбец в обратном порядке, оставшиеся элементы второй строки и т. д.; последним выводится центральный элемент матрицы.
Решение задачи: «Вывести элементы матрицы по спирали»
textual
Листинг программы
static void Main(string[] args) { int m; m = Convert.ToInt32(Console.ReadLine()); int[,] mat = new int[m, m]; Random r = new Random(); for (int i = 0; i < m; i++) { Console.WriteLine(); for (int j = 0; j < m; j++) { mat[i, j] = r.Next(100); Console.Write(mat[i, j] + " "); } } Console.WriteLine(); Console.WriteLine(); int a=0, b=1, c=2; for (int i = 0; i < m; i++) { for (int j = a; j < m-a; j++) { Console.Write(mat[a, j] + " "); } for (int j = b; j < m-a; j++) { Console.Write(mat[j, m - b] + " "); } for (int j = m - c; j >= a; j--) { Console.Write(mat[m - b, j] + " "); } for (int j = m - c; j > a; j--) { Console.Write(mat[j, a] + " "); } a++; b++; c++; } Console.ReadKey(); }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д