Сравнить элементы двух матриц и вывести равные в отдельный массив - C#
Формулировка задачи:
Здравствуйте. Уже искал помощи на форуме, но все равно завис, хоть задача и не выглядит особо сложной.
По условию есть две матрицы одинаковой размерности n*m. Элементы матриц могут быть сгенерированы случайно, заданы пользователем или введены как заданные в программе константы.
После этого поочередно сравниваются элементы матриц и равные записываются в отдельный вектор, его можно реализовать любым образом.
Мне предлагали сделать вот так, но как я понимаю, такой метод сравнивает размеры матриц и в случае равенства выводит в новый массив элементы первой.
И вот так выводил потом это все в listBox:
Как мне в итоге быть? Помогите пожалуйста, все сроки горят, а я висну в таких местах.
static int[] GetVector(int[,] array1, int[,] array2) // Метод для сравнения матриц { if (array1.GetLength(0) != array2.GetLength(0) || array1.GetLength(1) != array2.GetLength(1)) return null; List<int> vector = new List<int>(); for (int i = 0; i < array1.GetLength(0); i++) for (int j = 0; j < array1.GetLength(1); j++) { if (array1[i, j] == array2[i, j]) vector.Add(array1[i, j]); } return vector.ToArray(); }
private void сравнитьМатрицыToolStripMenuItem_Click(object sender, EventArgs e) { listBox1.Items.Clear(); int n = dataGridView1.ColumnCount; int m = dataGridView1.RowCount; int[,] a = new int[n, m]; for (int i = 0; i < n; i++) for (int j = 0; j < m; j++) a[i, j] = Convert.ToInt32(dataGridView1[i, j].Value); // int n1 = dataGridView2.ColumnCount; int m1 = dataGridView2.RowCount; int[,] b = new int[n1, m1]; for (int i = 0; i < n1; i++) for (int j = 0; j < m1; j++) b[i, j] = Convert.ToInt32(dataGridView1[i, j].Value); listBox1.DataSource = GetVector(a, b);
Решение задачи: «Сравнить элементы двух матриц и вывести равные в отдельный массив»
textual
Листинг программы
int k=0; for(int i=0; i<m; i++) { for(int j=0; j<n; j++) { if(mas[i][j]==mas2[i][j]) { mas3[k]=mas[i][j]; k++; } } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д