Сдвиг столбцов матрицы влево - C#

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

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

В двумерном массиве произвести сдвиг элементов таким образом, что второй столбец становится первым, третий столбец - вторым и т.д., а первый становится последним. Помогите пожалуйста с заданием.

Решение задачи: «Сдвиг столбцов матрицы влево»

textual
Листинг программы
  1. namespace ConsoleApplication1
  2. {
  3.     class Program
  4.     {
  5.  
  6.  
  7.         static void Main(string[] args)
  8.         {
  9.             int m = 4;
  10.             int n = 5;
  11.             int[,] arr = new int[m,n];
  12.             int[,] new_arr = new int[m, n];
  13.  
  14.             MyLib.ArrRandom(arr); //заполняет 2x массив рандомом
  15.             MyLib.ArrPrint(arr); //печатает 2x массивы  int
  16.  
  17.             int L1=arr.GetUpperBound(0)+1;
  18.             int L2=arr.GetUpperBound(1)+1;
  19.             int jx;
  20.  
  21.            
  22.             for (int i = 0; i < L1; i++)
  23.             {
  24.                 for (int j = 0; j < L2; j++)
  25.                 {
  26.                     jx = j;
  27.                     if (j == L2-1)
  28.                     {
  29.                         jx = -1;
  30.                     }
  31.                     new_arr[i, j] = arr[i, jx + 1];
  32.                 }
  33.             }
  34.  
  35.             MyLib.ArrPrint(new_arr); //печатает 2x массивы  int
  36.  
  37.             Console.ReadLine();
  38.         }
  39.     }
  40.  
  41.     class MyLib
  42.     {
  43.         public static void ArrRandom(int[,] arr, int r1 = 0, int r2 = 10) //заполняет 2x массив рандомом
  44.         {  
  45.  
  46.             int i, j;
  47.             int L1, L2;
  48.             L1 = arr.GetUpperBound(0) + 1;
  49.             L2 = arr.GetUpperBound(1) + 1;
  50.  
  51.             Random random = new Random();
  52.  
  53.             for (i = 0; i < L1; i++)
  54.             {
  55.                 for (j = 0; j < L2; j++)
  56.                 {
  57.                     arr[i, j] = random.Next(r1, r2);
  58.                 }
  59.             }
  60.  
  61.         }
  62.  
  63.         public static void ArrPrint(int[,] arr) //печатает 2x массивы  int
  64.         {    
  65.  
  66.             int r1, r2;
  67.             int i, j;
  68.             r1 = arr.GetUpperBound(0) + 1;
  69.             r2 = arr.GetUpperBound(1) + 1;
  70.  
  71.             for (i = 0; i < r1; i++)
  72.             {
  73.                 for (j = 0; j < r2; j++)
  74.                 {
  75.                     Console.Write(arr[i, j] + " ");
  76.                 }
  77.                 Console.WriteLine("");
  78.             }
  79.             Console.WriteLine("");
  80.         }
  81.     }
  82.    
  83.    
  84.            
  85.  
  86.  
  87. }

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


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

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

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

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

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

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