Разработка прикладной программы для решения систем линейных алгебраических уравнений

Курсовой проект - Компьютеры, программирование

Другие курсовые по предмету Компьютеры, программирование

реализации алгоритмов решения в виде так называемых программ. Для решения этой проблемы в различные годы использовались следующие средства:

программирование в машинных кодах (включая языки типа Ассемблер);

программирование на языках высокого уровня (включая объектно-ориентированное программирование);

системы компьютерной математики.

Разработка программы требует и соответствующей подготовки (назовем ее программистской), и достаточно большего количества времени (и то и другое часто отсутствует у обычного пользователя). Поэтому, начиная с 90-х годов прошлого века, широкую известность и заслуженную популярность приобрели так называемые системы компьютерной математики или, проще, математические пакеты.

Для решения СЛАУ существует множество программных средств: MathCad, Mathematica, MatLab и др.- математически ориентированные универсальные системы. Помимо собственно вычислений они позволяют с блеском решать задачи, которые с трудом поддаются популярным текстовым редакторам или электронным таблицам. С их помощью можно не только качественно подготовить тексты статей, книг, диссертаций, научных отчетов, дипломных и курсовых проектов, они, кроме того, облегчают набор самых сложных математических формул и дают возможность представления результатов, в изысканном графическом виде.

С момента своего появления системы класса MathCAD имели удобный пользовательский интерфейс - совокупность средств общения с пользователем в виде масштабируемых и перемещаемых окон, клавиш и иных элементов. У этой системы есть и эффективные средства типовой научной графики, они просты в применении и интуитивно понятны. Словом, системы MathCAD ориентированы на массового пользователя - от ученика начальных классов до академика.Lab - язык программирования и система научных и инженерных расчетов, построенная на основе интерпретатора этого языка. Matlab, сокращение от Matrix Laboratory, предназначен в первую очередь для выполнения алгоритмов, использующих векторы и матрицы.имеет большое число пакетов (toolboxes) - как собственных, так и распространяемых независимыми разработчиками часто на условиях открытого кода. В Matlab включен Simulink - визуальный редактор для моделирования динамических систем.

В конце прошлого века получила широкое распространение и сейчас быстро развивается система Mathematica. Ее успех в значительной степени объясняется ее широкими графическими возможностями, а также электронной документацией, которую можно рассматривать как электронную библиотеку, посвященную различным разделам математики и информатики. Mathematica имеет высокую скорость и практически не ограниченную точность вычислений, что позволяет ей работать как на очень мощных компьютерах, так и не очень сильных персональных компьютерах. Огромным достоинством программы Mathematica является справочная система. Она включает в себя не только очень качественное описание функций с примерами, а также учебник. В ней есть все материалы для тех кто только начинает работу с приложением, и для тех кто работает с ней очень давно.

Но часто бывает неудобно использовать вышеперечисленные программы для реализации конкретной задачи, каковой является решение СЛАУ, нахождение определителя и обратной матрицы. Иногда удобней реализовать задачу как отдельное приложение. В качестве языка программирования предполагается использовать среду визуального программирования Delphi.

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

Пакет Delphi - продолжение линии компиляторов языка Pascal корпорации Borland. Pascal как язык очень прост, а строгий контроль типов данных способствует раннему обнаружению ошибок и позволяет быстро создавать надежные и эффективные программы.

Как язык Turbo Pascal естественно сравнивать с его ближайшими конкурентами - многочисленными вариациями на тему языка Basic и с C++. Я считаю, что Turbo Pascal существенно превосходит Basic за счет полноценного объектного подхода, включающего в себя развитые механизмы инкапсуляции, наследование и полиморфизм. Последняя версия языка, применяемая в Delphi, по своим возможностям приближается к C++. Из основных механизмов, присущих C++, отсутствует только множественное наследование. Плюсы применения языка Pascal очевидны: с одной стороны, в отличие от Visual Basic, основанного на интерпретации промежуточного кода, для него имеется компилятор, генерирующий машинный код, что позволяет получать значительно более быстрые программы. С другой - в отличие от C++ синтаксис языка Pascal способствует построению очень быстрых компиляторов.

 

1.3 Этапы разработки программных систем

 

Исходным этапом создания и является этап разработки требований, в процессе которого проводятся поисковые, исследовательские работы, формируется комплекс требований, выражающий потребности пользователя в конкретном ПИ. На данном этапе будущий комплекс программ тщательно анализируется с учетом выполняемых им функций и основных свойств, обосновывается целесообразность их разработки, предварительно оцениваются трудовые и стоимостные затраты и сроки создания, вырабатываются рекомендации по выбору инструментальных с