Форум программистов, компьютерный форум, киберфорум
C# Windows Forms
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.80/15: Рейтинг темы: голосов - 15, средняя оценка - 4.80
0 / 0 / 3
Регистрация: 11.04.2014
Сообщений: 35

Компонент DataGridView и матрицы

01.10.2015, 22:11. Показов 3131. Ответов 10
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Вообщем задача такова
"Ввод с клавиатуры непосредственно в табличный элемент. Произведение элементов строк со средними,
большими, чем среднее значение матрицы. Преобразовать матрицу: Каждый элемент строки матрицы представить как
приращение по отношению к минимальному элементу этой строки. P=0;"
Вот что я начал делать
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
            int m = int.Parse(textBox1.Text);
            int n = int.Parse(textBox2.Text);
 
            for (int i = 0; i < m; i++)
            {
                
                dataGridView1.Columns.Add("Column " + i++, "Column " + i--); // i++ и i-- это чтоб начиналось с единицу, а не с 0 
            }
            for (int j = 0; j < n; j++)
                dataGridView1.Rows.Add();
 
            for (int i = 0; i < m; i++) // здесь и цикл ниже как я понимаю он должен бежать по формуле какой-то =)
            {
 
            }
            for (int j = 0; j<n; j++)
            {
 
            }
и всё, стоп) не могу дальше продолжить, помогите)
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
01.10.2015, 22:11
Ответы с готовыми решениями:

Компонент datagridview
Всем привет! Такой вопрос как в datagridview указать с какой строки отображать данные? Например нужно чтобы данные из таблицы показывались...

Импорт данных из Excel в компонент datagridview
У меня такой вопрос: каким образом можно импортировать данные из Excel в компонент datagridview в среде Visual Studio (2005)? У меня...

DataGridView: некорректное форматирование, если компонент не виден
Столкнулся с проблемой: Если делать невидимым панель с DataGridView на время выполнения над нею действий (по порядку): 1) Экспорт...

10
 Аватар для ViterAlex
8952 / 4864 / 1886
Регистрация: 11.02.2013
Сообщений: 10,246
02.10.2015, 01:29
Создаёшь dataGridView и в форме держишь массив двумерный. Вычисления производишь на массиве, отображаешь его в матрице
Цитата Сообщение от svirid Посмотреть сообщение
Каждый элемент строки матрицы представить как
приращение по отношению к минимальному элементу этой строки
Смотри вложение.
Цитата Сообщение от svirid Посмотреть сообщение
Произведение элементов строк со средними,
большими, чем среднее значение матрицы.
И что с этим произведением делать?
Вложения
Тип файла: zip DataGridViewAndArray.zip (19.0 Кб, 16 просмотров)
0
0 / 0 / 3
Регистрация: 11.04.2014
Сообщений: 35
02.10.2015, 17:16  [ТС]
Произведение элементов строк со средними,
большими, чем среднее значение матрицы.
наверное вывести и показать это

Добавлено через 5 часов 52 минуты
Вот точнее:Найти среднее арифмитичкское всей матрицы и в каждой строке сравнить произведение строки которые больше всей матрицы и её вывести

Добавлено через 1 час 30 минут
И ещё чтоб на форм 1 мы указывали размеры матрицы, а в форм 2 было два компонента датагрид, в первом то что мы вбиваем значения матрицы, во втором изменёная матрица и там же выводились значения те что по формуле

Добавлено через 1 час 45 минут
ViterAlex,
0
 Аватар для ViterAlex
8952 / 4864 / 1886
Регистрация: 11.02.2013
Сообщений: 10,246
03.10.2015, 01:40
Цитата Сообщение от svirid Посмотреть сообщение
сравнить произведение строки которые больше всей матрицы и её вывести
Что вывести? Произведение, строку или среднее арифметическое?
0
0 / 0 / 3
Регистрация: 11.04.2014
Сообщений: 35
03.10.2015, 09:13  [ТС]
1)Найти среднее арифметическоевсей матрицы (вывести)
2)Найти произведение каждой строки (вывести)
3)Сравнить произведение строки и средне арифметическое всей матрицы и если произведение строки больше среднего арифметического, то мы это выводим

Добавлено через 16 секунд
ViterAlex,
0
 Аватар для ViterAlex
8952 / 4864 / 1886
Регистрация: 11.02.2013
Сообщений: 10,246
03.10.2015, 17:31
Лучший ответ Сообщение было отмечено svirid как решение

Решение

Держи
Миниатюры
Компонент DataGridView и матрицы  
Вложения
Тип файла: zip DataGridView And Arrays.zip (24.0 Кб, 39 просмотров)
1
0 / 0 / 3
Регистрация: 11.04.2014
Сообщений: 35
03.10.2015, 20:58  [ТС]
ViterAlex, Ошибка выскакивает при изменении матрицы
Миниатюры
Компонент DataGridView и матрицы  
0
 Аватар для ViterAlex
8952 / 4864 / 1886
Регистрация: 11.02.2013
Сообщений: 10,246
03.10.2015, 23:29
Судя по описанию ошибки ты начал менять размер, не закончив редактирование ячейки. Закончи — и меняй
0
0 / 0 / 3
Регистрация: 11.04.2014
Сообщений: 35
04.10.2015, 08:24  [ТС]
ViterAlex, Ладно, с первым я разобрался, изменить размер матрицы можно если она чем-то заполнена, только так. Но вот вторая ошибка, вообще не понятная я заполнил раз матрицу, потом изменил её размер, и когда я пытаюсь заполнить второй раз, вот эта ошибка
Миниатюры
Компонент DataGridView и матрицы  
0
 Аватар для ViterAlex
8952 / 4864 / 1886
Регистрация: 11.02.2013
Сообщений: 10,246
05.10.2015, 02:46
Цитата Сообщение от svirid Посмотреть сообщение
изменить размер матрицы можно если она чем-то заполнена, только так
Да, странно, что я не заметил. Не даёт завершить редактирование событие CellValidating. Т.к. ячейка пустая, то ячейка остаётся в режиме редактирования. Исправляется так:
C#
1
2
3
4
5
private void maindataGridView_CellValidating(object sender, DataGridViewCellValidatingEventArgs e) {
    double value;
    e.Cancel = e.FormattedValue.ToString() != string.Empty 
                && !double.TryParse(e.FormattedValue.ToString(), out value);
}
Цитата Сообщение от svirid Посмотреть сообщение
вторая ошибка, вообще не понятная я заполнил раз матрицу, потом изменил её размер, и когда я пытаюсь заполнить второй раз, вот эта ошибка
Перепутаны индексы размерностей массива. Должно быть так:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
/// <summary>
/// Среднее арифметическое элементов массива
/// </summary>
private double Average {
    get {
        double summ = 0;
        for (int i = 0; i < array.GetLength(0); i++) {
            for (int j = 0; j < array.GetLength(1); j++) {
                summ += array[i, j];
            }
        };
        return summ / array.Length;
    }
}
1
0 / 0 / 3
Регистрация: 11.04.2014
Сообщений: 35
05.10.2015, 21:57  [ТС]
Спасибо огромное, с кодом я разобрался)
Чтоб не создавать новую тему, подскажи пожалуйста как сделать это без таймера
C#
1
2
toolStripStatusLabel2.Text = "NumberLock: " + Convert.ToString(Console.NumberLock);
       toolStripStatusLabel3.Text = "CapsLock: " + Convert.ToString(Console.CapsLock);
И чтобы оно обновлялась постоянно при нажатии
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
05.10.2015, 21:57
Помогаю со студенческими работами здесь

Как вставить в ячейку DataGridView компонент ComboBox
Как вставить в ячейку DataGridView компонент Combobox ???

Зависает на 3-5 минут компонент DataGridView в Microsoft Visual C# 2008
Вот в главном классе есть два метода через invoke internal void p_Add(String p) { this.Invoke(new...

Импорт таблицы из MS Excel 2007-2010 в компонент datagridview
У меня проблема. Есть код импортирующий таблицу (с заголовками) из MS Excel 97-2003 в компонент datagridview: OpenFileDialog opf = new...

Добавление строк в DataGridView, если компонент привязан к данным
Выдаёт ошибку &quot;Строки нельзя программным способом добавить в коллекцию строк DataGridView, если элемент управления привязан к данным.&quot;...

Посоветуйте компонент для заполнения матрицы
Народ, кто подскажет как ввести и считать матрицу. Суть в том что пишу программу с GUI под Win32 и и пользую Windows Forms в MS VS2008. ...


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

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Новые блоги и статьи
1С: Контроль уникальности заводского номера
Maks 23.03.2026
Алгоритм контроля уникальности заводского (или серийного) номера на примере документа выдачи шин для спецтехники с табличной частью. Данные берутся из регистра сведений, по которому настроено. . .
Хочу заставить корпорации вкладываться в здоровье сотрудников: делаю мат модель здравосохранения
anaschu 22.03.2026
e7EYtONaj8Y Z4Tv2zpXVVo https:/ / github. com/ shumilovas/ med2. git
1С: Программный отбор элементов справочника по группе
Maks 22.03.2026
Установка программного отбора элементов справочника "Номенклатура" из модуля формы документа. В качестве фильтра для отбора справочника служит группа номенклатуры. Отбор по наименованию группы. . .
Как я обхитрил таблицу Word
Alexander-7 21.03.2026
Когда мигает курсор у внешнего края таблицы, и нам надо перейти на новую строку, а при нажатии Enter создается новый ряд таблицы с ячейками, то мы вместо нервных нажатий Энтеров мы пишем любые буквы. . .
Krabik - рыболовный бот для WoW 3.3.5a
AmbA 21.03.2026
без регистрации и смс. Это не торговля, приложение не содержит рекламы. Выполняет свою непосредственную задачу - автоматизацию рыбалки в WoW - и ничего более. Однако если админы будут против -. . .
1С: Программный отбор элементов справочника по значению перечисления
Maks 21.03.2026
Установка программного отбора элементов справочника "Сотрудники" из модуля формы документа. В качестве фильтра для отбора служит значение перечислений. / / Событие "НачалоВыбора" реквизита на форме. . .
Переходник USB-CAN-GPIO
Eddy_Em 20.03.2026
Достаточно давно на работе возникла необходимость в переходнике CAN-USB с гальваноразвязкой, оный и был разработан. Однако, все меня терзала совесть, что аж 48-ногий МК используется так тупо: просто. . .
Оттенки серого
Argus19 18.03.2026
Оттенки серого Нашёл в интернете 3 прекрасных модуля: Модуль класса открытия диалога открытия/ сохранения файла на Win32 API; Модуль класса быстрого перекодирования цветного изображения в оттенки. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru