Skip to main content

🔢Задание LinearAlgebra


📝 Основное задание

Разработать программу, которая:

  1. (1 балл) Рассчитывает сумму двух матриц.
  2. (1 балл) Умножает число на матрицу.
  3. (1 балл) Находит произведение двух матриц.
  4. (1 балл) Производит транспонирование матрицы.
  5. (1 балл) Вычисляет определитель матрицы.
  6. (1 балл) Находит обратную матрицу.

Способ ввода данных выбрать самостоятельно. Результаты вывести в консоль.


⭐ Задания со звездочкой

  1. (1.5 балла) Разработать меню для выбора определённой операции. Реализовать возможность возврата к меню после выполнения математических операций. Формат меню может быть любой, например, числовой или псевдографический (как в TotalCommander в DOS или FarManager).
  2. (2.5 балла) Разработать модульные тесты для проверки правильности математических операций над матрицами.

Бонусные задания
  1. (до 5 баллов) Придумать самостоятельно, как можно модифицировать программу. Можно не реализовывать кодом, но тогда надо будет рассказать на собеседовании, как можно реализовать ту или иную модификацию.
  2. (3 балла) Модифицируйте меню так, чтобы оно было универсальным для всех заданий, где требуется меню (LinearAlgebra, Logics, Numerics), и реализуйте её в отдельной сборке, чтобы подключать к остальным заданиям.
  3. (1 балл) Создайте Nuget пакет на основе сборки, в которой реализована универсальная логика меню. Выкладывать на nuget.org необязательно, но у проверяющего куратора должен быть доступ к пакету.

Оценка

Оценка для текущего задания — 10-бальная система.

Формула оценки:

image.png

Основные баллы это сумма баллов за основные задания и за задания со звездочкой.

Минимальный порог — 4 из 10.