tutotveti.ru
Предметы
Биология
Українська мова
Музыка
Французский язык
Физика
МХК
Обществознание
Психология
ОБЖ
Право
Беларуская мова
Литература
Химия
Українська література
Экономика
Немецкий язык
География
Информатика
Қазақ тiлi
Геометрия
Английский язык
Русский язык
Окружающий мир
Алгебра
История
Другие предметы
Видео-ответы
ПОИСК
Войти
Регистрация
Информатика
Описать класс матрица. создать
Описать класс матрица. создать метод вычитания матриц (перегруженный оператор “–“). в программе показать пример в c#(си шарп)
Melenocka0606
1 31.07.2019 02:20
1
Ответы
Kso57
03.10.2020 18:09
Using System;
using System.Collections.Generic;
public class Matrix
{
private double[,] Data;
public double this[int i, int j]
{
get { return Data[i, j]; }
set { Data[i, j] = value; }
}
public Matrix(double[,] data) { this.Data = data; }
public override string ToString()
{
var sb = new System.Text.StringBuilder();
for (var i = Data.GetLowerBound(0); i <= Data.GetUpperBound(0); i++)
{
for (var j = Data.GetLowerBound(1); j <= Data.GetUpperBound(1); j++)
{
sb.AppendFormat("{0} ", Data[i, j]);
}
sb.AppendLine();
}
return sb.ToString();
}
public int GetUpperBound(int i) => this.Data.GetUpperBound(i);
public static Matrix operator -(Matrix a, Matrix b)
{
var c = new double[1 + Math.Min(a.GetUpperBound(0), b.GetUpperBound(0)), 1 + Math.Min(a.GetUpperBound(1), b.GetUpperBound(1))];
for (var i = 0; i <= c.GetUpperBound(0); i++)
{
for (var j = 0; j <= c.GetUpperBound(1); j++)
{
c[i, j] = a[i, j] - b[i, j];
}
};
return new Matrix(c);
}
}
class Program
{
static void Main()
{
var n = 5;
var a = new Matrix(new double[n, n]);
var b = new Matrix(new double[n, n]);
for (var i = 0; i < n; i++)
{
for (var j = 0; j < n; j++)
{
a[i, j] = i + j;
b[i, j] = i;
}
}
Console.WriteLine(a);
Console.WriteLine(b);
Console.WriteLine(a - b);
Console.ReadKey();
}
}
ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика
maximp1699
05.05.2020 15:02
Написать программу решения квадратного уравнения и выполнить её для входных данных: а...
Yourstudentbook
05.05.2020 15:00
Составьте алгоритм буквы Ш в чертежнике (КуМир Т^Т...
ruslanpavlov8
05.05.2020 15:00
Размер графической сетки 640х480. Определите минимальный объём видеопамяти для 32-цветного графического изображения. (Решение данной задачи требует развёрнутого пояснения)...
ванёк10062005
25.01.2021 11:24
Окуляр увеличивает изображение объекта исследования.Тубус— место прикрепления окуляра.Винтырегулируют высоту предметного столика.Штатив– основа микроскопа для прикрепления...
trushinaveronic
25.01.2021 11:25
Каким образом происходит преобразование непрерывного звукового сигнала в дискретный цифровой код...
Криста02
25.01.2021 11:25
Выполните задание 1. Как вы понимаете типы данных2. В программе Python составьте программу так, чтобы из слово «Информатика» вышло обратное слово «акитамрофнИ»3. Составьте...
daryatitova1
10.12.2020 16:21
Задачи на списки в Python: 1. Опишите на языке программирования алгоритм подсчета максимального количества подряд идущих элементов, каждый из которых больше предыдущего,...
dilnoza2006
10.12.2020 16:19
Задачи на числовые списки в Python: 1. Дано целое число N ( 1), а также первый член A и знаменатель D геометрической прогрессии. Сформировать и вывести список размера N,...
Тимофейзъ
10.12.2020 16:19
укажите типы ошибок в программе 1.логические 2. пунктуационные 3.периодические 4. синтаксические при чего выявляются логические ошибки в программе? 1. программирование средства...
Nad17ka
05.08.2019 22:40
Переведите число 11001001 2 в десятичную систему счисления...
Популярные вопросы
Какие смеси можно разделить при декантации 1 смесь песка и соли; смесь...
1
Две прямые пересекаются в 1 точке сколько лучей с началом в этой точке...
1
3класс оредели падеж существительных 148...
2
Релите уравнения используя основное свойство пропорции y/16=3/8...
3
Кто такой лермонтов? какие у него есть произведения? ×...
2
Определите последовательность нуклеотидов и рнк, если комплиментарная...
1
Спишите, расставьте запятые, выделите главную и придаточную части. определите...
1
Диктант значений. запишите слова каторые соответствуют этим толкованиям.1...
3
А) 5/11 от 385; б) число, 3/7 которого равны 105....
3
Увысших растений нет клеточного центра,как тогда размножаются их клетки...
3
using System.Collections.Generic;
public class Matrix
{
private double[,] Data;
public double this[int i, int j]
{
get { return Data[i, j]; }
set { Data[i, j] = value; }
}
public Matrix(double[,] data) { this.Data = data; }
public override string ToString()
{
var sb = new System.Text.StringBuilder();
for (var i = Data.GetLowerBound(0); i <= Data.GetUpperBound(0); i++)
{
for (var j = Data.GetLowerBound(1); j <= Data.GetUpperBound(1); j++)
{
sb.AppendFormat("{0} ", Data[i, j]);
}
sb.AppendLine();
}
return sb.ToString();
}
public int GetUpperBound(int i) => this.Data.GetUpperBound(i);
public static Matrix operator -(Matrix a, Matrix b)
{
var c = new double[1 + Math.Min(a.GetUpperBound(0), b.GetUpperBound(0)), 1 + Math.Min(a.GetUpperBound(1), b.GetUpperBound(1))];
for (var i = 0; i <= c.GetUpperBound(0); i++)
{
for (var j = 0; j <= c.GetUpperBound(1); j++)
{
c[i, j] = a[i, j] - b[i, j];
}
};
return new Matrix(c);
}
}
class Program
{
static void Main()
{
var n = 5;
var a = new Matrix(new double[n, n]);
var b = new Matrix(new double[n, n]);
for (var i = 0; i < n; i++)
{
for (var j = 0; j < n; j++)
{
a[i, j] = i + j;
b[i, j] = i;
}
}
Console.WriteLine(a);
Console.WriteLine(b);
Console.WriteLine(a - b);
Console.ReadKey();
}
}