Программа сравнения матриц - C#
Формулировка задачи:
доброго времени суток товарищи, столкнулся с такой проблемой не могу доделать лабу по программированию сравнение массивов.
текст задания
для заданной матрицы размером 8 x 8 найти такие к, при которых k-я строка
матрицы совпадает с k-м столбцом. Найти сумму элементов в тех строках, которые содержат хотя бы один отрицательный элемент.
Сумму элементов я уже нашел, а вот сравнить матрицы не могу.
код программы :
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; namespace лаба_5 { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void button1_Click(object sender, EventArgs e) { textBox3.Text = " "; int[,] mas = new int[10, 10]; int m = 2, n = 2; Random a = new Random(); for (int i = 0; i < m; i++) { for (int j = 0; j < n; j++) { if (a.Next(100) > 1) mas[i, j] = a.Next(3); else mas[i, j] = -a.Next(2); textBox3.Text = textBox3.Text + Convert.ToString(mas[i, j]) + " "; } textBox3.Text = textBox3.Text + System.Environment.NewLine; } #region найти сумму эллементов int p = 0; for (int i = 0; i < n; i++) { for (int s = 0; s < m; s++) { if (mas[i, s] < 0) { for (int j = 0; j < 9; j++) p += mas[i, j]; } label4.Text = "Найти сумму элементов в тех строках, которые содержат хотя бы один отрицательный элемент: " + Convert.ToString(p); } } #endregion
Решение задачи: «Программа сравнения матриц»
textual
Листинг программы
using System; using System.Collections.Generic; namespace Matrix { class Program { static void Main(string[] args) { int[,] matr = { { 1, 2, 3, 4 }, { 2, 3, 9, 5 }, { 3, 1, 3, 6 }, { 4, 5, 6, 1 } }; foreach (int k in FindK(matr)) Console.Write(k + " "); Console.ReadKey(); } static IEnumerable<int> FindK(int[,] matrix) { int n = matrix.GetLength(0); for (int i = 0; i < n; i++) { bool isEqual = true; for (int j = 0; j < n; j++) { if (matrix[i, j] != matrix[j, i]) { isEqual = false; break; } } if (isEqual) yield return i; } } } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д