Программа сравнения матриц - 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;
            }
        }
    }
}

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

9   голосов , оценка 3.778 из 5
Похожие ответы