Array_Pyzir

Форк
0
/
Program.cs 
95 строк · 2.9 Кб
1
using System;
2

3
namespace Montirovka
4
{
5
    internal class Program
6
    {
7
        public static void Main(string[] args)
8
        {
9
            int colCount = Convert.ToInt32(Console.ReadLine());
10
            int rowCount = Convert.ToInt32(Console.ReadLine());
11
            
12
            int[,] massive = GenerateArray(rowCount, colCount);
13

14
            Console.WriteLine("Сгенерированный массив: ");
15
            PrintArray(massive);
16

17
            Console.WriteLine("Сортировка в строке: ");
18
            int[] row = new int[colCount];
19
            for (int i = 0; i < rowCount; i++)
20
            {
21
                for (int j = 0; j < colCount; j++)
22
                {
23
                    row[j] = massive[i, j];
24
                }
25
                Sortirovka_Puzircom(row);
26
                Insert(true, i, row, massive);
27
            }
28
            PrintArray(massive);
29

30
            Console.WriteLine("Сортировка столбцов: ");
31
            int[] col = new int[rowCount];
32
            for (int i = 0; i < colCount; i++)
33
            {
34
                for (int j = 0; j < rowCount; j++)
35
                {
36
                    col[j] = massive[j, i];
37
                }
38
                Sortirovka_Puzircom(col);
39
                Insert(false, i, col, massive);
40
            }
41
            PrintArray(massive);
42
        }
43

44
        private static int[,] GenerateArray(int i, int j)
45
        {
46
            int[,] table = new int[i, j];
47
            Random random = new Random();
48
            for (int a = 0; a < i; a++)
49
            {
50
                for (int b = 0; b < j; b++)
51
                {
52
                    table[a, b] = random.Next(0, 100);
53
                }
54
            }
55
            return table;
56
        }
57

58
        private static void PrintArray(int[,] array)
59
        {
60
            for (int a = 0; a < array.GetLength(0); a++)
61
            {
62
                for (int b = 0; b < array.GetLength(1); b++)
63
                {
64
                    Console.Write(array[a, b] + "\t");
65
                }
66
                Console.WriteLine();
67
            }
68
        }
69

70
        private static void Sortirovka_Puzircom(int[] inArray)
71
        {
72
            for (int i = 0; i < inArray.Length; i++)
73
                for (int j = 0; j < inArray.Length - i - 1; j++)
74
                {
75
                    if (inArray[j] > inArray[j + 1])
76
                    {
77
                        int temp = inArray[j];
78
                        inArray[j] = inArray[j + 1];
79
                        inArray[j + 1] = temp;
80
                    }
81
                }
82
        }
83

84
        private static void Insert(bool isRow, int dim, int[] source, int[,] dest)
85
        {
86
            for (int k = 0; k < source.Length; k++)
87
            {
88
                if (isRow)
89
                    dest[dim, k] = source[k];
90
                else
91
                    dest[k, dim] = source[k];
92
            }
93
        }
94
    }
95
}

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.