Вычисление определителя
Материал из MachineLearning.
Постановка задачи
Задание подразумевает знакомство с тем, как считает компьютер и какие последствия это имеет при реализации численных методов на ЭВМ. Требуется изложить и проанализировать процедуру, которая вычисляет требуемую величину и оценивает допущенную при этом ошибку. Процедура должна возвращать 2 значения: result и error. Важно дать рекомендации по выбору параметров, в том числе связанные с форматом представления чисел. Важно дать обзор русских и английских терминов, чтобы было понятно, под какими названиями искать численные процедуры в библиотеках и что означают их параметры.
В теме решение СЛАУ важно рассказать, зачем используют столько много разных методов. Оценить достижимую точность. Программа используется как лабораторный стенд для создания иллюстраций к отчету. Именно наличие числовых результатов и графиков в отчете является основным подтверждением работоспособности программы. Основным языком программирования в ходе практикума является С++. При этом программа может просто давать числовые результаты, а построение графиков и диаграмм по результатам можно выполнять в других системах (например, Excel). Подразумевается, что написанным кодом потенциально способны будут воспользоваться другие студенты. Отсюда исходят требования по комментированию и документированию кода. Ориентировочно, студент может предполагать, что комментировать и документировать код надо так, чтобы остались довольны третьекурсники.
При программировании разрешается пользоваться сторонними библиотеками. Но те части, которые относятся к самой сути задания, должны быть реализованы студентом самостоятельно и присутствовать в исходном коде. Сдаваемый исходный код должен компилироваться на удовлетворяющем международному стандарту компиляторе С++ (или С). Следовательно, особенно при использовании сторонних библиотек, требуется четко сообщить, что надо сделать для компиляции и запуска программы. Ограничений на операционную систему не накладывается. Скорее наоборот, желательно, чтобы код был независим от платформы.