Написать программу решения системы уравнений

Решение системы уравнений

Задача

Требуется определить, сколько можно преобрести ручек (по цене 10 руб.), карандашей (5 руб.) и ластиков (2 руб.) на 100 рублей. При этом всего предметов должно быть 30.

Решение

Обозначим искомое количество ручек, карандашей и ластиков через переменные a , b и c соответственно.

Цены предметов: pa , pb , pc .

Количество предметов: qty .

Сумма покупки: sum .

Алгоритм решения задачи:

Составим систему уравнений.
Уравнение суммы покупки: 10*a + 5*b + 2*c = 100
Уравнение количества предметов: a + b + c = 30

Заменим числа соответствующими переменными:
Уравнение суммы покупки: pa*a + pb*b + pc*c = sum
Уравнение количества предметов: a + b + c = qty

Чтобы перебрать все возможные варианты сочетания переменных a , b и с , надо использовать три цикла, вложенные друг в друга.
Если при каких-либо значениях a , b и c оба уравнения будут истинны, значит эти значения являются решением для системы уравнений.
Система уравнений может иметь несколько решений или не иметь ни одного.

Программа на языке Паскаль:

При заданных данных программа выдаст два варианта решения системы уравнений:

Программа может выглядеть немного по-другому. При заданных значениях a и b определить c можно по формуле qty — a — b . В таком случае код будет выглядеть так:

BestProg

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

Условие задачи

Задана система линейных алгебраических уравнений:

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

Выполнение

При сохранении проекта имя модуля главной формы приложения оставляем по умолчанию « Unit1.cpp «.

Рис. 1. Форма приложения с созданными файлами

2. Разработка главной формы приложения

2.1. Название приложения

Задать название приложения. Для этого свойство Caption главной формы устанавливаем в значение «Метод Гаусса».

2.2. Установка свойств формы

Выделить форму. В Object Inspector установить значение следующих свойств:
– свойство Border Style = bsDialog ;
– свойство Position = poScreenCenter ;
– в свойстве Font выбрать параметры шрифта: шрифт Tahoma , размер шрифта 12 (рис. 2).

Рис. 2. Установка параметров шрифта главной формы приложения

В результате, форма приложения примет вид как показано на рисунке 3.

Рис. 3. Главная форма приложения

2.3. Компонент типа TGroupBox

Размещаем на форме компонент (элемент управления) типа TGroupBox из палитры компонент « Tool Palette «.

Рис. 4. Компонент типа TGroupBox

В результате, система создаст объект-переменную с именем GroupBox1 .

Изменяем размеры компонента GroupBox1 на всю ширину окна главной формы.

Свойство Caption компонента GroupBox1 устанавливаем в значение « Условие задачи «. Форма приложения будет иметь вид, как показано на рисунке 5.

Рис. 5. Форма приложения после размещения компонента TGroupBox

2.4. Компонент типа TLabel .

Размещаем компонент типа TLabel в области компонента TGroupBox . Автоматически создается объект-переменная с именем Label1 (рис. 6).

Устанавливаем свойство WordWrap компонента Label1 в значение « true » (рис. 6).

С помощью мышки изменяем ширину вывода текста компонента Label1 (рис. 6).

Рис. 6. Компонент Label1 , свойство WordWrap

Свойство Caption компонента Label1 устанавливаем в значение:

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

В результате, форма приложения примет вид, как показано на рисунке 7.

Рис. 7. Форма приложения после размещения компонента Label1

2.5. Компоненты типа TButton .

Размещаем на форме компоненты типа TButton . В результате образуются два объекта-переменные с именами Button1 и Button2 .

Для лучшей наглядности изменяем размеры компонент так как показано на рисунке 8.

Рис. 8. Форма приложения с размещенными компонентами Button1 и Button2

Устанавливаем такие свойства компонент Button1 и Button2:
– в компоненте Button1 свойство Caption = «Выход» ;
– в компоненте Button2 свойство Caption = «Расчет >>» .

В результате форма приложения примет вид, как показано на рисунке 9.

Рис. 9. Главная форма приложения после размещения всех компонент

3. Программирование события клика на кнопке «Выход».

Вызовем событие OnClick компонента Button1 (кнопка « Выход «) (рис. 10). Событие размещается на вкладыше Events в Object Inspector .

Процесс программирования события OnClick подробно описан здесь.

Рис. 10. Вызов события OnClick компонента Button1

В результате, откроется окно с программным кодом метода обработки события. Между скобками < >вводим вызов метода Close() .

Метод Close() закрывает окно главной формы приложения и осуществляет все необходимые операции по освобождению памяти, ресурсов и т.д.

Листинг метода обработки события следующий:

4. Разработка формы ввода числа уравнений n.

4.1. Размещение компонент на форме и их настройка.

Процесс создания новой формы подробно описан здесь.

Для создания новой формы вызовем команду

В результате, будет создана новая форма, как показано на рисунке 11. Сохраняем форму под именем « Unit2.cpp «.

Создаются файлы, которые соответствуют форме:
– файл « Unit2.h «, содержащий описания глобальных переменных и подключения других модулей;
– файл « Unit2.cpp «, содержащий реализацию методов формы;
– файл « Unit2.dfm «, содержащий описание изображения формы на экране (размеры окна, координаты формы относительно окна экрана, значение цветов и прочее).

Новосозданной форме отвечает объект с именем Form2 . С помощью этого имени можно приступаться к свойствам и методам формы Form2 .

Рис. 11. Новосозданная форма Form2

Осуществим настройку формы Form2 .

Сначала настроим свойства формы:
– свойство Caption = «Задайте число уравнений» ;
– свойство BorderStyle = bsDialog ;
– свойство Position = poScreenCenter ;
– в свойстве Font нужно выбрать следдующие параметры шрифта: шрифт Tahoma, размер шрифта 12.

Размещаем на форме такие компоненты:
– компонент типа TGroupBox которому будет отвечать объект GroupBox1;
– компонент типа TLabel, размещается внутри области компонента GroupBox1 . Компоненту типа TLabel отвечает объект-переменная Label1 ;
– компонент типа TEdit , размещается внутри области компонента GroupBox1 . Этому компоненту отвечает объект (переменная) Edit1 ;
– два компонента типа TButton , которым отвечают объекты с именами Button1 и Button2 .

Осуществим настройку свойств компонент:
– в компоненте GroupBox1 значение свойства Caption = «» (пустая строка);
– в компоненте Label1 значение свойства Caption = «n = « ;
– в компоненте Edit1 значение свойства Text = «» ;
– в компоненте Button1 значение свойства Caption = « ;
– в компоненте Button2 значение свойства Caption = «Далее >>» .

После размещения компонент и корректирования размеров формы, форма Form2 имеет вид как показано на рисунке 12.

Рис. 12. Форма Form2 после размещения и настройки всех компонент

4.2. Программирование обработчиков событий формы Form2 .

В форме Form2 программируем два обработчика событий:
– обработчик события OnClick клика на кнопке « «;
– обработчик события OnClick клика на кнопке « Далее >> «.

Листинг обработчика события клика на кнопке Button1 (« «):

Листинг обработчика события клика на кнопке Button2 (« Продолжить >> «):

Глобальная переменная ModalResult отвечает за состояние формы. Если глобальная переменная ModalResult=0 , то это означает что форма открытая как модальное окно. Как только значение ModalResult станет ненулевым, то форма Form2 закроется с кодом возврата, помещенным в ModalResult .

Таким образом, если пользователь сделает клик на кнопке Button1 , то форма Form2 закроется с кодом возврата mrNo. Если пользователь сделает клик на кнопке Button2, то форма Form2 закроется с кодом возврата mrOk .

5. Построение формы ввода коэффициентов в уравнениях.

5.1. Размещение компонент на форме и их настройка.

Создание формы происходит стандартным путем и описано в п. 4.

Сохраняем форму под именем предлагаемым по умолчанию « Unit3.cpp «.

После создания формы получим объект с именем Form3 . С помощью этого объекта можно будет использовать методы и свойства формы Form3 .

Данной форме отвечают файлы с именами « Unit3.h «, « Unit3.cpp » и « Unit3.dfm «.

Сначала осуществим настройку свойств формы Form3 так, как описано в п. 4:
– свойство Caption = «Ввод коэффициентов уравнений «;
– свойство BorderStyle = bsDialog ;
– свойство Position = poScreenCenter ;
– в свойстве Font нужно выбрать параметры шрифта: шрифт Tahoma , размер шрифта 12 .

Для построения формы ввода коэффициентов уравнений используем такие компоненты:
– два компонента типа TLabel . Автоматически будут созданы объекты с такими именами: label1 и label2 ;
– компонент типа TStringGrid (рис. 13) для ввода коэффициентов, которые размещаются в левой части системы уравнений.

Компонент TStringGrid размещается во вкладке Additional панели инструментов « Tool Palette «. Создается объект с именем StringGrid1 ;
– компонент типа TStringGrid (рис. 13) для введения коэффициентов, которые размещаются в правой части системы уравнений. Создается объект с именем StringGrid2 ;
– два компонента типа TButton (кнопки « » и « Продолжить >> «). Создаются два объекта с именами Button1 и Button2 .

Рис. 13. Компонент TStringGrid на палитре компонент

После размещения компонент и корректировки их размеров, форма Form3 будет иметь приблизительно следующий вид (рис. 14).

Рис. 14. Форма Form3

Формируем свойства компонент формы Form3:
– в компоненте Label1 свойство Caption = « Коэффициенты в левой части уравнения «;
– в компоненте Label2 свойство Caption = «Правая часть» ;
– в компоненте Button1 свойство Caption = « ;
– в компоненте Button2 свойство Caption = «Далее >>» .

Формируем свойства компонентов типа TStringGrid :
– в компоненте StringGrid1 свойство FixedCols = 0 (число фиксированных колонок);
– в компоненте StringGrid1 свойство FixedRows = 0 (число фиксированных строк);
– в компоненте StringGrid2 свойство FixedCols = 0 ;
– в компоненте StringGrid2 свойство FixedRows = 0 ;
– в компоненте StringGrid1 выбираем вкладку Options и устанавливаем опцию goEditing в значение « true «;
– в компоненте StringGrid2 во вкладке Options опция goEditing = « true «.

Рис. 15. Установление опции goEditing во вкладке Options компонента StringGrid1

После выполненных действий, форма Form3 будет иметь вид как показано на рисунке 16.

Рис. 16. Форма Form3 после окончательного формирования

5.2. Программирование обработчиков событий формы Form3 .

Программируем обработчики событий OnClick клика на кнопках Button1 и Button2 формы Form3 .

Листинг обработчиков событий приведен ниже.

6. Создание формы вывода результата.

Последней в приложении создается форма, которая будет выводить результат вычислений. Процесс создания и сохранения формы подробно описан здесь. При сохранении формы оставляем имя по умолчанию « Unit4.cpp «.

В результате получаем объект с именем Form4 .

Новосозданная форма Form4 описывается в файле « Unit4.dfm «. Также форме отвечают файлы « Unit4.h » и « Unit4.cpp «.

6.1. Построение формы Form4 .

Сначала настраиваем свойства формы Form4 :
– свойство Caption = «Результат» ;
– свойство BorderStyle = bsDialog ;
– свойство Position = poScreenCenter ;
– в свойстве Font нужно выбрать следующие параметры шрифта: шрифт Tahoma , размер шрифта 12 .

Также корректируем размеры формы.

Следующим шагом идет размещение на форме компонент.

Размещаем на форме следующие компоненты (рис. 17):
– один компонент типа TLabel ;
– два компонента типа TStringGrid ;
– один компонент типа TButton .

Корректируем размеры и позиции компонент для удобного отображения.

После размещения компонент будут созданы объекты с такими именами: Label1 , StringGrid1 , StringGrid2 , Button1 . В компоненте StringGrid1 выводятся номера переменных величин x в уравнении. В компоненте StringGrid2 выводятся значения решения системы уравнений.

Настраиваем компоненты формы следующим образом:
– в компоненте Label1 свойство Caption = «Решение системы» ;
– в компоненте Button1 свойство Caption = «OK» ;
– в компоненте StringGrid1 свойства FixedCols = 0 и FixedRows = 0 ;
– в компоненте StringGrid2 свойства FixedCols = 0 и FixedRows = 0 .

После размещения и настройки компонент, форма Form4 будет иметь вид, как показано на рисунке 17.

Рис. 17. Форма Form4 после окончательного формирования

6.2. Программирование события клика на кнопке « ОК » формы Form4 .

Листинг обработчика события клика на кнопке « ОК » следующий:

7. Написание программного кода расчета.

7.1. Подключение модулей «Unit2.h», «Unit3.h», «Unit4.h» к модулю «Unit1.h».

Для того, чтобы из главной формы приложения Form1 вызвать второстепенные формы, нужно осуществить их подключения в модуле « Unit1.h «.

Подключение модулей форм Form2 , Form3 , Form4 к форме Form1 осуществляется стандартным для языка C/C++ способом.

Сначала нужно перейти в модуль « Unit1.h «.

Затем после строк

Рубрики

  • C# (160)
    • Практика (42)
      • MS Visual Studio 2010 (34)
      • MS Visual Studio 2017 (7)
      • MS Visual Studio 2019 (10)
    • Теория (118)
  • C++ (139)
    • Практика (31)
      • Borland C++ Builder 2007 (16)
      • MS Visual Studio 2010 (18)
    • Теория (109)
      • Visual C++ (104)
  • Java (96)
    • Практика (6)
    • Теория (90)
  • JavaScript (6)
    • Практика (1)
    • Теория (5)
  • Kotlin (19)
    • Практика (1)
    • Теория (18)
  • Pascal/Delphi (35)
    • Практика (19)
      • Delphi-7 (3)
      • Embarcadero RAD Studio 2010 (17)
    • Теория (16)
  • Python (91)
    • Практика (4)
    • Теория (87)
  • Базы данных (42)
  • Компьютерная графика (3)
  • Курсовые работы (7)
  • Математическое ПО (9)
  • Паттерны (20)

Свежие записи

  • C++. Абстрактный класс. Чисто виртуальная функция 18 февраля, 2022
  • C++. Полиморфизм. Виртуальные функции. Общие понятия 17 февраля, 2022
  • C++. Линейный двухсвязный список. Пример шаблонного класса 16 февраля, 2022
  • C++. Линейный двухсвязный (двунаправленный) список 16 февраля, 2022
  • C++. Кольцевая очередь. Разработка шаблонного класса, реализующего кольцевую очередь 14 февраля, 2022
  • C++. Пример реализации линейного односвязного списка 13 февраля, 2022
  • C++. Линейный односвязный список. Общие сведения 11 февраля, 2022
  • Java. Автоупаковка и автораспаковка в выражениях и операторе switch 9 февраля, 2022
  • C++. Разработка класса реализующего «умный» указатель 7 февраля, 2022
  • Java. Автоупаковка и автораспаковка 5 февраля, 2022

При использовании материалов сайта, ссылка на сайт обязательна.

Привет студент

ПРОГРАММНАЯ РЕАЛИЗАЦИЯ РЕШЕНИЯ СИСТЕМ ЛИНЕЙНЫХ УРАВНЕНИЙ

Приднестровский государственный университет им. Т.Г. Шевченко

Кафедра программного обеспечения вычислительной техники

и автоматизированных систем

КУРСОВАЯ РАБОТА

«Информатика и программирование»

тема: «ПРОГРАММНАЯ РЕАЛИЗАЦИЯ РЕШЕНИЯ СИСТЕМ ЛИНЕЙНЫХ УРАВНЕНИЙ»

студентка группы ИТ13ДР62ИС1

Арабаджи Федор Иванович

ЗАДАНИЕ

на курсовую работу по дисциплине

«ПРОГРАММИРОВАНИЕ»

Студента группы ________ — ___________________

утверждена протоколом кафедры _________ № _____ от «____» ____________ 20___ г.

Цель курсовой работы:

Задачи курсовой работы:

Результаты курсовой работы:

График обязательных консультаций:

Дата сдачи записки на регистрацию «_____» __________20__ г.

Дата защиты курсовой работы «_____» __________20__ г.

Задание принял к исполнению «_____» __________20__ г. ___________/________________/

Руководитель работы ______________________ /________________/

СОДЕРЖАНИЕ

2 ОПИСАНИЕ ПРЕДМЕТНОЙ ОБЛАСТИ………………………………….

2.3 Метод обратной матрицы…………………………………………….

3 РУКОВОДСТВО ПРОГРАММИСТА………………………………………..

3.1 Введение и общие сведения……………………………………………

3.2 Структура программного продукта………………………………….

3.4 Описание исходных текстов программного продукта…………….

3.5 Аппаратная и программная часть…………………………………….

3.6 Результаты тестирования и опытной эксплуатации………………….

4 РУКОВОДСТВО ПОЛЬЗОВАТЕЛЯ……………………………………….

4.3 Установка программного продукта……………………………….…..

4.4 Запуск и работа с программным продуктом…………………….……

4.5 Удаление программного продукта…………………………………….

СПИСОК ИСПОЛЬЗОВАННОЙ ЛИТЕРАТУРЫ…………………………….

Введение

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

Сейчас невозможно представить себе какую-либо область деятельности, обходящуюся без применения компьютерной техники.

Компьютеры используются при проведении различных инженерных расчётов, при решении экономических задач, в процессе управления производством, при получении оценок производственных ситуаций и во многих других случаях.

Решение систем линейных алгебраических уравнений является одной из основных задач линейной алгебры. Эта задача имеет важное прикладное значение при решении научных и технических проблем. Кроме того, является вспомогательной при реализации многих алгоритмов вычислительной математики, математической физики, обработки результатов экспериментальных исследований.

Алгебраическое уравнение называется линейным, если оно содержит переменные только в первой степени и не содержит произведений переменных.

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

Чтобы быстро справится с решением системы линейных уравнений, можно воспользоваться средствами вычислительной техники – написать программу на языке программирования.

Учитывая современные возможности, можно облегчить процесс решения систем линейных уравнений. Данную задачу можно выполнить программно для упрощения и автоматизации процесса решения систем линейных уравнений методом Гаусса, методом Крамера, а также методом обратной матрицы с помощью Windows-приложения, реализованного средствами языка высокого уровня С#.

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

1 постановка задачи

В данной курсовой работе необходимо создать программный продукт при помощи Windows Forms на языке C#, который представлял бы возможность:

  • ввода данных с клавиатуры или считывания их из файла с представлением права выбора пользователю;
  • решения системы линейных уравнений;
  • запись данных в файл;
  • доступа к файлу, куда записываются входные и выходные данные.

Программа должна выполнять решение систем линейных уравнений методом Гаусса, методом Крамера или методом обратной матрицы.

Окно программы должно содержать:

  • пункты меню: Файл, Правка, Примеры, Справка, О программе;
  • поле выбора метода решения системы линейных уравнений;
  • поле выбора количества уравнений в системе;
  • поля для входных и выходных данных;
  • кнопки операций.

Входными данными являются числа вещественного типа, введенные с клавиатуры или считанные из файла. Программа распознает входные данные и производит решение системы одним из выбранных методов.

Результатом работы программы служит отображение получившейся матрицы или определителя (в зависимости от выбранного способа) и корни системы уравнений, полученные в результате решения системы.

2 описание предметной области

Решение систем линейных алгебраических уравнений – одна из фундаментальных задач математики. Система m линейных алгебраических уравнений с n неизвестными (или, линейная система, также употребляется аббревиатура СЛАУ) в линейной алгебре — это система уравнений вида (Рисунок 1)

Рисунок 1- Система уравнений

В системе уравнений (Рисунок 1) m является количеством уравнений, а n количество неизвестных. x1, x2,xn это неизвестные, которые надо определить. a11, a12, … amn коэффициенты системы, а b1, b2, … bm свободные члены. Индексы коэффициентов (aij) системы обозначают номера уравнения (i) и неизвестного (j), при котором стоит этот коэффициент, соответственно.

Существуют следующие способы решения систем линейных уравнений:

– метод обратной матрицы.

2.1 Метод Гаусса

Метод Гаусса – классический метод решения системы линейных алгебраических уравнений. Это метод последовательного исключения переменных, когда с помощью элементарных преобразований система уравнений приводится к равносильной системе треугольного вида, из которой последовательно, начиная с последних (по номеру), находятся все переменные системы. Хотя в настоящее время данный метод повсеместно называется методом Гаусса, он был известен и до К.Ф. Гаусса. Первое известное описание данного метода приведено в китайском трактате «Математика в девяти книгах», составленном между первым веком до н. э. и вторым веком н. э.

Далее приведено более подробное описание метода. Пусть исходная система будет вида (Рисунок 2):

Рисунок 2 — Исходная система уравнений

На рисунке 2.1 указана матрица A, вектор x и вектор b. Матрицей А называется основная матрица системы, вектором x – столбец неизвестных, вектором – столбец свободных членов.

Рисунок 2.1 — Матрица A

Согласно свойству элементарных преобразований над строками, основную матрицу этой системы можно привести к треугольному (или ступенчатому) виду (эти же преобразования нужно применять к столбцу свободных членов), что показано на рисунке 2.2

Рисунок 2.2 — Матрица треугольного вида

При этом будем считать, что базисный минор (ненулевой минор максимального порядка) основной матрицы находится в верхнем левом углу, то есть в него входят только коэффициенты при переменных xj1, … , xjr.

Тогда переменные xj1, … , xjr называются главными переменными. Все остальные называются свободными.

Если хотя бы одно число βi ≠ 0, где i > r, то рассматриваемая система несовместна, то есть у неё нет ни одного решения.

Пусть βi ≠ 0 для любых i > r. Перенесём свободные переменные за знаки равенств и поделим каждое из уравнений системы на свой коэффициент при самом левом x (см. рисунок 2.3):

Рисунок 2.3- Несовместная система

Если свободным переменным системы (рисунок 2.3) придавать все возможные значения и решать новую систему относительно главных неизвестных снизу вверх (то есть от нижнего уравнения к верхнему), то мы получим все решения этой системы линейных алгебраических уравнений. Так как эта система получена путём элементарных преобразований над исходной системой, то по теореме об эквивалентности при элементарных преобразованиях системы (рисунок 2) и (рисунок 2.3) эквивалентны, то есть множества их решений совпадают.

2.2 Метод Крамера

Метода Крамера – способ решения систем линейных алгебраических уравнений с числом уравнений равным числу неизвестных с ненулевым главным определителем матрицы коэффициентов системы, причём для таких уравнений решение существует и единственно. Назван по имени Габриэля Крамера, предложившего этот метод в 1750 г.

Рисунок 2.4 — Система линейных уравнений

Для системы n линейных уравнений (рисунок 2.4) с n неизвестными с определителем матрицы системы ≠ 0, решение записывается по формуле показанном на рисунке 2.5:

Рисунок 2.5 — Нахождение решения

i-ый столбец матрицы системы заменяется столбцом свободных членов.

2.3 Метод обратной матрицы

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

Обратная матрица – такая матрица A −1 , при умножении на которую, исходная матрица A даёт в результате единичную матрицу E (формула 2.6).

Обратная матрица находится по формуле 2.7.

В формуле 2.7 det обозначает определитель.

Если необходимо решить систему линейных уравнений Ax = b, где b – ненулевой вектор, в который входят свободные члены, x – искомый вектор. Если обратная матрица A -1 существует, то x = A -1 b. В противном случае либо размерность пространства решений больше нуля, либо их нет вовсе.

3 ПРОграммная реализация решения задачи

3.1 Введение и общие сведения

Одна из основных задач линейной алгебры – решение систем линейных алгебраических уравнений. Эта задача имеет важное прикладное значение при решении научных и технических проблем. Кроме того, является вспомогательной при реализации многих алгоритмов вычислительной математики, математической физики, обработки результатов экспериментальных исследований.

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

  • методом Гаусса;
  • методом Крамера;
  • методом обратной матрицы.

Данный программный продукт значительно упрощает получение корней систем линейных уравнений.

3.2 Структура программного продукта

В процессе разработки программного продукта были реализованы следующие формы:

  • Formcs – форма приветсвия;
  • MATrix.cs – форма, обеспечивающая решение систем линейных алгебраических уравнений методом Гаусса, методом Крамера или методом обратной матрицы по выбору пользователя;
  • About.cs – форма, содержащая информацию о программном продукте.

На рисунке 3.1 изображена функциональная схема.


источники:

http://www.bestprog.net/ru/2016/03/06/011-c-builder-%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B0-%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F-%D1%80%D0%B5%D1%88%D0%B5%D0%BD%D0%B8%D1%8F-%D1%81%D0%B8/

http://privetstudent.com/kursovyye/kompiuternye-tekhnologii-kursovye/4172-programmnaya-realizaciya-resheniya-sistem-lineynyh-uravneniy.html