Форум программистов, компьютерный форум, киберфорум
C# Windows Forms
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.67/6: Рейтинг темы: голосов - 6, средняя оценка - 4.67
2 / 2 / 1
Регистрация: 05.10.2016
Сообщений: 56
1

Массив: Упорядочить строки матрицы по не убыванию их наибольших элементов

03.02.2018, 19:16. Показов 1072. Ответов 3
Метки нет (Все метки)

Есть код из консольного приложения, как его реализовать в Windows forms.
Задание:
Дана матрица n*m. Упорядочить ее строки по не убыванию их наибольших элементов.
Код:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
public static void Main(string[] args)
{
    float[,] A = new float[100, 100]; float s = 0.0f;
    Console.Write("Введите n = ");
    Int32.TryParse(Console.ReadLine(), out int n);
    Console.Write("Введите m = ");
    Int32.TryParse(Console.ReadLine(), out int m);
    Console.WriteLine("Исходная матрица:");
 
    Random rand = new Random();
    for (int i = 0; i < n; i++)
    {
        for (int j = 0; j < m; j++)
        {
            A[i,j] = (float)rand.NextDouble() * 100;
            Console.Write(A[i, j] + "\t");
        }
        Console.WriteLine();
    }
 
    Console.WriteLine("Новая матрица:");
 
    for (int i = 0; i < n; i++)
    {
        for (int k = m - 1; k > 0; k--)
        {
            for (int j = 0; j < k; j++)
            {
                if (A[i, j] > A[i, j + 1])
                {
                    s = A[i, j]; A[i, j] = A[i, j + 1]; A[i, j + 1] = s;
                }
            }
        }
    }
 
    for (int i = 0; i < n; i++)
    {
        for (int j = 0; j < m; j++)
        {
            Console.Write(A[i, j] + "\t");
        }
        Console.WriteLine();
    }
 
    Console.ReadKey();
}
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
03.02.2018, 19:16
Ответы с готовыми решениями:

Упорядочить строки матрицы по не убыванию наибольших элементов
Дана вещественная матрица размером 3 x 4. Упорядочить ее строки по не убыванию наибольших элементов...

Упорядочить строки матрицы по убыванию их наибольших элементов
В общем задача такая, матрицы. Дана вещественная матрица X размера m n. Упорядочить ее строки по...

Упорядочить строки матрицы по убыванию их наибольших элементов. Использовать подпрограммы.
Дана вещественная матрица X размера mxn. Упорядочить ее строки по убыванию их наибольших...

Упорядочить строки матрицы по убыванию значений наибольших элементов строк
Дана действительная марица размера n*m, упорядочить (переставить) строки матрицы по убыванию...

__________________

Записывайтесь на профессиональные курсы С#-разработчиков‌
3
2 / 2 / 1
Регистрация: 05.10.2016
Сообщений: 56
03.02.2018, 19:21  [ТС] 2
Должно получиться примерно такое:
Массив: Упорядочить строки матрицы по не убыванию их наибольших элементов
0
2 / 2 / 1
Регистрация: 05.10.2016
Сообщений: 56
03.02.2018, 20:07  [ТС] 3
Дана матрица M x N. Упорядочить ее строки по не убыванию их наибольших элементов.
Помогите решить в C# Windows forms через DataGridView Помогите)
0
613 / 506 / 316
Регистрация: 20.05.2015
Сообщений: 1,422
05.02.2018, 09:46 4
Лучший ответ Сообщение было отмечено NikolayStadnik как решение

Решение

Добавь код после вычислений для вывода в грид:
C#
1
2
3
4
5
6
7
8
            dataGridView1.RowCount = n;
            dataGridView1.ColumnCount = m;
            for (int i = 0; i < n; i++)
                for (int j = 0; j < m; j++)
                    dataGridView1.Rows[i].Cells[j].Value = A[i, j];
            //далее необязательно 
            dataGridView1.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.Fill;
            dataGridView1.AutoSizeRowsMode = DataGridViewAutoSizeRowsMode.AllCellsExceptHeaders;
Цитата Сообщение от NikolayStadnik Посмотреть сообщение
по не убыванию
Это я так понимаю по возрастанию.
Цитата Сообщение от NikolayStadnik Посмотреть сообщение
Есть код из консольного приложения
Ваш код сортирует элементы строки по возрастанию, а вам надо найти в каждой строке по наибольшему элементу и упорядочить строки по этим наибольшим элементам.
Правильнее было бы написать так:
Кликните здесь для просмотра всего текста
C#
1
2
3
4
5
6
7
   float s = 0.0f;
    Console.Write("Введите n = ");
    Int32.TryParse(Console.ReadLine(), out int n);
    Console.Write("Введите m = ");
    Int32.TryParse(Console.ReadLine(), out int m);
    Console.WriteLine("Исходная матрица:");
 float[,] A = new float[n, m];
1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
05.02.2018, 09:46

Заказываю контрольные, курсовые, дипломные работы и диссертации здесь.

Массив: Упорядочить строки матрицы по неубыванию их наибольших элементов.
Дана матрица размером . Упорядочить ее строки по неубыванию их наибольших элементов. Мне нужно...

Упорядочить столбцы матрицы по убыванию значений наибольших элементов столбцов
Дана действ. матрица размера m*n, упорядочить столбцы матрицы по убыванию значений наибольших...

Упорядочить массив по убыванию элементов второй строки и напечатать max и min элементы матрицы
1. Введите массив N и определите, есть ли в нем элементы с одинако-выми значениями 2. Дан...

Упорядочить строки матрицы по возрастанию наибольших элементов
Дана вещественной матрица размером (n x m ). Упорядочить ее строки по возрастанию наибольших...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.