Advertisement
FSOCllDRUG

69_Morning_Star

Dec 8th, 2022
369
0
Never
1
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 1.88 KB | None | 0 0
  1. /*Написать программу, упорядочивания по убыванию элементы каждой строки двумерной массива.
  2. Например, задан массив:
  3. 1 4 7 2
  4. 5 9 2 3
  5. 8 4 2 4
  6. В итоге получается вот такой массив:
  7. 1 2 4 7
  8. 2 3 5 9
  9. 2 4 4 8*/
  10.  
  11. int[,] Random2DArray(int n,int m,int min=0,int max=10)
  12. {
  13.     int[,] a=new int[n,m];
  14.     Random random=new Random();
  15.     for(int i=0;i<n;i++)
  16.          for(int j=0;j<m;j++)
  17.                 a[i,j]=random.Next(min,max+1);
  18.     return a;
  19. }
  20.  
  21. void Print2DArray(int[,] a)
  22. {
  23.     for(int i=0;i<a.GetLength(0);i++)
  24.         {
  25.      for(int j=0;j<a.GetLength(1);j++)
  26.         System.Console.Write($"{a[i,j],3}");
  27.            System.Console.WriteLine();
  28.         }
  29. }
  30.  
  31.  
  32. void Swap(ref int a,ref int b)
  33. {
  34.     int t=a;
  35.     a=b;
  36.     b=t;
  37. }
  38.  
  39. void SelectSort(int[,] a)
  40. {
  41.    int im;
  42.    for(int l=0;l<a.GetLength(1);l++)
  43.    {
  44.         for(int i=0;i<a.GetLength(0);i++)
  45.         {
  46.                 im=i;
  47.                 for(int j=i+1;j<a.GetLength(0);j++) if (a[im,l]<a[j,l]) im=j;
  48.                 Swap(ref a[i,l],ref a[im,l]);
  49.         }
  50.         // im=0;
  51.    }
  52. }
  53.  
  54. System.Console.Write("Введите значение n(кол-во строк): ");
  55. int n=Convert.ToInt32(Console.ReadLine());
  56. System.Console.Write("Введите значение k(кол-во столбцов): ");
  57. int k=Convert.ToInt32(Console.ReadLine());
  58. int[,] a= Random2DArray(n,k);
  59. Print2DArray(a);
  60. System.Console.WriteLine();
  61. SelectSort(a);
  62. Print2DArray(a);
  63.  
  64. Вывод:
  65. 1: 10  1  3  7  3
  66.   5  1  2  7  6
  67.   7  1  6  4  4
  68.  
  69.  10  1  6  7  6
  70.   7  1  3  7  4
  71.   5  1  2  4  3
  72.  
  73. 2:  8  1 10  1  7
  74.   1  1  8  3 10
  75.   7  9 10  5  8
  76.  
  77.   8  9 10  5 10
  78.   7  1 10  3  8
  79.   1  1  8  1  7
  80.  
  81. 3:  7  9  6  7  7
  82.   3  5  6  4  3
  83.   6  2  2  1  3
  84.  
  85.   7  9  6  7  7
  86.   6  5  6  4  3
  87.   3  2  2  1  3
Advertisement
Comments
Add Comment
Please, Sign In to add comment
Advertisement