Отсортировать диагонали матрицы, параллельные побочной, по возрастанию элементов методом «пузырька» - C#

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

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

Дана матрица размерностью n × n, содержащая целые числа. Отсортировать диагонали матрицы, параллельные побочной, по возрастанию элементов методом «пузырька»

Решение задачи: «Отсортировать диагонали матрицы, параллельные побочной, по возрастанию элементов методом «пузырька»»

textual
Листинг программы
  1. class Program
  2.     {
  3.         static void Sort(int[] a)
  4.         {
  5.             for (int i = 0; i < a.Length - 1; i++)
  6.                 for (int j = i; j < a.Length; j++)
  7.                     if (a[i] > a[j])
  8.                     {
  9.                         int x = a[i];
  10.                         a[i] = a[j];
  11.                         a[j] = x;
  12.                     }
  13.         }
  14.         static void output(int[,] a)
  15.         {
  16.             for (int i = 0; i < a.GetLength(0); i++)
  17.             {
  18.                 for (int j = 0; j < a.GetLength(1); j++)
  19.                     Console.Write(a[i, j] + "\t");
  20.                 Console.WriteLine();
  21.             }
  22.             Console.WriteLine();
  23.         }
  24.         static void Main(string[] args)
  25.         {
  26.             Random rnd = new Random();
  27.             int[,] matrix = new int[6, 6];
  28.             int[] abc = new int[6];
  29.             int[] cba = new int[6];
  30.             for (int i = 0; i < matrix.GetLength(0); i++)
  31.                 for (int j = 0; j < matrix.GetLength(1); j++)
  32.                 {
  33.                     matrix[i, j] = rnd.Next(-30, 80);
  34.                     if (i == j) abc[i] = matrix[i, j];
  35.                     if (i == (matrix.GetLength(0)-1 - j)) cba[i] = matrix[i, j];
  36.                 }
  37.             output(matrix);
  38.             Sort(abc); Sort(cba);
  39.             for (int i = 0; i < 6; i++)
  40.                 for (int j = 0; j < 6; j++)
  41.                 {
  42.                     if (i == j) matrix[i, j] = abc[i];
  43.                     if (i == (matrix.GetLength(0)-1 - j)) matrix[i, j] = cba[i];
  44.                 }
  45.             output(matrix);
  46.             Console.ReadLine();
  47.         }
  48.     }

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


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

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

7   голосов , оценка 4.143 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы