Задание LinearAlgebra
📝 Основное задание
Разработать программу, которая:
- (1 балл) Рассчитывает сумму двух матриц.
- (1 балл) Умножает число на матрицу.
- (1 балл) Находит произведение двух матриц.
- (1 балл) Производит транспонирование матрицы.
- (1 балл) Вычисляет определитель матрицы.
- (1 балл) Находит обратную матрицу.
Способ ввода данных выбрать самостоятельно. Результаты вывести в консоль.
⭐ Задания со звездочкой
- (1.5 балла) Разработать меню для выбора определённой операции. Реализовать возможность возврата к меню после выполнения математических операций. Формат меню может быть любой, например, числовой или псевдографический (как в TotalCommander в DOS или FarManager).
- (2.5 балла) Разработать модульные тесты для проверки правильности математических операций над матрицами.
⭐ Бонусные задания
- (до 5 баллов) Придумать самостоятельно, как можно модифицировать программу. Можно не реализовывать кодом, но тогда надо будет рассказать на собеседовании, как можно реализовать ту или иную модификацию.
- (3 балла) Модифицируйте меню так, чтобы оно было универсальным для всех заданий, где требуется меню (LinearAlgebra, Logics, Numerics), и реализуйте её в отдельной сборке, чтобы подключать к остальным заданиям.
- (1 балл) Создайте Nuget пакет на основе сборки, в которой реализована универсальная логика меню. Выкладывать на nuget.org необязательно, но у проверяющего куратора должен быть доступ к пакету.
Оценка
Оценка для текущего задания — 10-бальная система.
Формула оценки:
Основные баллы это сумма баллов за основные задания и за задания со звездочкой.
Минимальный порог — 4 из 10.