.NET 4.x Описать класс, реализующий тип данных "вещественная матрица" и работу с ними - C#
Формулировка задачи:
Нужно описать класс, реализующий тип данных ≪вещественная матрица≫ и работу с ними. Значит, я начал писать с помощью массивом. И вот столкнулся с такой проблемой, что при сложении массив в public static Matrix operator +(Matrix mas, Matrix mas1), а именно temp[i,j] = mas[i,j] + mas1[i,j]; - пишет неоднозначный вызов следующих методов или свойств: WindowsFormsApplication1.Matrix.this[int,int]
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace WindowsFormsApplication1 { class Matrix { public double[,] mas = new double[5, 5]; public double[,] mas1 = new double[5, 5]; public double[,] temp = new double[5, 5]; public Matrix(double[,] mas11, double[,] mas22, double[,] temp1) { mas = mas11; mas1 = mas22; temp = temp1; } public double this[int i, int j] { get { return mas[i, j]; } set { mas[i, j] = value; } } public double this[int i, int j] { get { return mas1[i, j]; } set { mas1[i, j] = value; } } public static Matrix operator +(Matrix mas, Matrix mas1) { double[,] temp = new double[5, 5]; for (int i = 0; i < 5; i++) { for (int j = 0; j < 5; j++) { temp[i,j] = mas[i,j] + mas1[i,j]; } } return temp; } } }
Решение задачи: «.NET 4.x Описать класс, реализующий тип данных "вещественная матрица" и работу с ними»
textual
Листинг программы
class mas { int[] inner = new int[5]; public mas() { } public mas(int num) { for (int i = 0; i < 5; i++) inner[i] = num; } public static mas operator + (mas m1, mas m2) { mas m3 = new mas(); for (int i = 0; i < 5; i++) m3.inner[i] = m1.inner[i] + m2.inner[i]; return m3; } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д