Array_Pyzir
/
Program.cs
95 строк · 2.9 Кб
1using System;
2
3namespace Montirovka
4{
5internal class Program
6{
7public static void Main(string[] args)
8{
9int colCount = Convert.ToInt32(Console.ReadLine());
10int rowCount = Convert.ToInt32(Console.ReadLine());
11
12int[,] massive = GenerateArray(rowCount, colCount);
13
14Console.WriteLine("Сгенерированный массив: ");
15PrintArray(massive);
16
17Console.WriteLine("Сортировка в строке: ");
18int[] row = new int[colCount];
19for (int i = 0; i < rowCount; i++)
20{
21for (int j = 0; j < colCount; j++)
22{
23row[j] = massive[i, j];
24}
25Sortirovka_Puzircom(row);
26Insert(true, i, row, massive);
27}
28PrintArray(massive);
29
30Console.WriteLine("Сортировка столбцов: ");
31int[] col = new int[rowCount];
32for (int i = 0; i < colCount; i++)
33{
34for (int j = 0; j < rowCount; j++)
35{
36col[j] = massive[j, i];
37}
38Sortirovka_Puzircom(col);
39Insert(false, i, col, massive);
40}
41PrintArray(massive);
42}
43
44private static int[,] GenerateArray(int i, int j)
45{
46int[,] table = new int[i, j];
47Random random = new Random();
48for (int a = 0; a < i; a++)
49{
50for (int b = 0; b < j; b++)
51{
52table[a, b] = random.Next(0, 100);
53}
54}
55return table;
56}
57
58private static void PrintArray(int[,] array)
59{
60for (int a = 0; a < array.GetLength(0); a++)
61{
62for (int b = 0; b < array.GetLength(1); b++)
63{
64Console.Write(array[a, b] + "\t");
65}
66Console.WriteLine();
67}
68}
69
70private static void Sortirovka_Puzircom(int[] inArray)
71{
72for (int i = 0; i < inArray.Length; i++)
73for (int j = 0; j < inArray.Length - i - 1; j++)
74{
75if (inArray[j] > inArray[j + 1])
76{
77int temp = inArray[j];
78inArray[j] = inArray[j + 1];
79inArray[j + 1] = temp;
80}
81}
82}
83
84private static void Insert(bool isRow, int dim, int[] source, int[,] dest)
85{
86for (int k = 0; k < source.Length; k++)
87{
88if (isRow)
89dest[dim, k] = source[k];
90else
91dest[k, dim] = source[k];
92}
93}
94}
95}