BSU.ASP.1501.Day8.Gatsura

Задание.

  • Создать обобщенные классы для представления квадратной, симметричной и диагональной матриц.
  • Описать в созданных классах событие, которое происходит при изменении элемента матрицы с индексами (i, j). В классе-клиенте (консольное приложение) продемонстрировать обработку этого события.
  • Реализовать сложение двух матриц, используя метод расширения, в случае невозможности выполнения операции должно генерироваться исключение.
  • Создать unit-тесты для тестирования методов разработанных типов.

Симметричная матрица – это квадратная матрица, которая совпадает с транспонированной к ней; диагональная матрица – это квадратная матрица, у которой элементы вне главной диагонали заведомо имеют значения равные значению по умолчанию параметра типа.