- Программная реализация метода Гаусса решения систем линейных уравнений.
- Решение системы линейных уравнений методом Гаусса и Жордана-Гаусса
- Постановка задачи
- Теоретическая часть
- Методы решения примененные в программе
- Метод Гаусса.
- Метод Жордана-Гаусса.
- Краткое описание среды визуальной разработки Delphi
- Таблица основных обозначений программы.
- Описание процедур и алгоритм роботы программы
- Текст программы.
- Файл-модуль unit1.pas
- Файл-модуль unit2.pas
- Файл проекта — Project1.dpr:
- Результат работы программы.
- Инструкция по работе с программой
- Использованная Литература
- Постановка задачи
- Теоретическая часть
- Методы решения примененные в программе
- Метод Гаусса
- Метод Жордана-Гаусса.
- Краткое описание среды визуальной разработки Delphi
- Таблица основных обозначений программы .
- Описание процедур и алгоритм роботы программы
- Текст программы .
- Файл-модуль unit1.pas
- Решение задач линейной алгебры средствами Delphi: Метод Гаусса для решения систем линейных алгебраических уравнений
- Kursovaya_po_obektno-orientirovannomu_programmi.docx
- Введение
- Содержательная часть
- История
- Описание метода
- Условие совместности
- Практическая часть.
- Постановка задачи
- 3.2. Методы решения линейных уравнений
- Руководство пользователя
- Листинг
Программная реализация метода Гаусса решения систем линейных уравнений.
Эта программа предназначена для сверхточного решения систем уравнений с 3 переменными и не нулевыми коэффициентами. Точность решения 0,0001.
Проверено — считает правильно. Не сомневайтесь. Программа считает систему линейных уравнений методом Гаусса. Причем выдается подробная таблица вычислений с учетом невязок.
Вот скриншоты:
Эта программа является лабораторной работой по «численым методам». (предмет такой у нас в универе)
Исходник и программу качайте здесь
Видео:Математика без Ху!ни. Метод Гаусса.Скачать
Решение системы линейных уравнений методом Гаусса и Жордана-Гаусса
МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ УКРАИНЫ
СУМСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ
по программированию по теме:
«Решение системы линейных уравнений методом Гаусса и Жордана-Гаусса »
Видео:Решение системы уравнений методом ГауссаСкачать
Постановка задачи
Видео:Решение системы уравнений методом Гаусса 4x4Скачать
Теоретическая часть
Видео:Метод Гаусса решения систем линейных уравненийСкачать
Методы решения примененные в программе
Видео:Метод Гаусса и метод Жордана-Гаусса ➜ 2 метода за 7 минутСкачать
Метод Гаусса.
Видео:Решение систем линейных уравнений методом Гаусса.Скачать
Метод Жордана-Гаусса.
Видео:Система линейных уравнений. Общее решение. Метод ГауссаСкачать
Краткое описание среды визуальной разработки Delphi
Видео:Решение системы линейных уравнений методом ГауссаСкачать
Таблица основных обозначений программы.
Видео:Решение системы уравнений методом Гаусса. Бесконечное множество решенийСкачать
Описание процедур и алгоритм роботы программы
Видео:Линейная алгебра, Матрицы: Метод Гаусса. Высшая математикаСкачать
Текст программы.
Видео:Линейная алгебра, 9 урок, Метод ГауссаСкачать
Файл-модуль unit1.pas
Видео:12. Метод Гаусса решения систем линейных уравнений. Часть 1.Скачать
Файл-модуль unit2.pas
Видео:метод Гаусса СИСТЕМА ЛИНЕЙНЫХ УРАВНЕНИЙ решение СЛАУСкачать
Файл проекта — Project1.dpr:
Видео:12. Решение систем линейных уравнений методом ГауссаСкачать
Результат работы программы.
Видео:МЕТОД ГАУССА 😉 #егэ #математика #профильныйегэ #shorts #огэСкачать
Инструкция по работе с программой
Видео:Решение систем линейных уравнений, урок 4/5. Метод ГауссаСкачать
Использованная Литература
Видео:Метод Крамера за 3 минуты. Решение системы линейных уравнений - bezbotvyСкачать
Постановка задачи
Составить программу для решения систем линейных уравнений размером n на n методом Гауса и Жордана-Гаусса.
Видео:6 способов в одном видеоСкачать
Теоретическая часть
Видео:Математика без Ху!ни. Метод Гаусса. Совместность системы. Ранг матрицы.Скачать
Методы решения примененные в программе
Метод Гаусса
Метод Гаусса решения систем линейных уравнений состоит в последовательном исключении неизвестных и описывается следующей процедурой.
С помощью элементарных преобразований над строками и перестановкой столбцов расширенная матрица системы может быть приведена к виду
Эта матрица является расширенной матрицей системы
которая эквивалентна исходной системе
Заметим, что перестановка столбцов означает перенумерацию переменных. На практике обычно избегают этой процедуры, приводя расширенную матрицу к ступенчатому виду путем элементарных преобразований над строками.
Если хотя бы одно из чисел отлично от нуля, то система несовместна. Если же , то система совместна и можно получить явное выражение для базисных неизвестных через свободных неизвестных
Метод Жордана-Гаусса.
Элементарные преобразования этого метода аналогичны методу Гаусса, только матрица при использовании этого метода приводится к виду, тоесть столбец свободных коэффициентов превращается в столбец корней.
Краткое описание среды визуальной разработки Delphi
Среда Delphi — это сложный механизм, обеспечивающий высокоэффективную работу программиста. Визуально она реализуется несколькими одновременно раскрытыми на экране окнами. Окна могут перемещаться по экрану, частично или полностью перекрывая друг друга, что обычно вызывает у пользователя, привыкшего к относительной “строгости” среды текстового процессора Word или табличного процессора Excel, ощущение некоторого дискомфорта. После приобретения опыта работы с Delphi это ощущение пройдет, и вы научитесь быстро отыскивать нужное окно, чтобы изменить те или иные функциональные свойства создаваемой вами программы, ибо каждое окно несет в себе некоторую функциональность, т. е. предназначено для решения определенных задач.
Запустите Delphi — и вы увидите нечто, похожее на
На рисунке изображены шесть наиболее важных окон Delphi: главное окно, окно Дерева объектов (Object Tree View), окно Инспектора объектов, окно браузера, окно формы и окно кода программы.
Чтобы упорядочить окна так, как они показаны на рисунке, вам придется вручную изменять их положение и размеры, т. к. обычно окно кода программы почти полностью перекрыто окном формы. Впрочем, добиваться максимального сходства того, что вы видите на экране вашего ПК, с изображением, показанным на рисунке, вовсе не обязательно: расположение и размеры окон никак не влияют на их функциональностью.
Замечу, что при первом запуске Delphi поверх всех окон появится окно
С помощью этого окна вы сможете получить доступ к Web-страницам корпорации Inprise для просмотра самой свежей информации о корпорации и ее программных продуктах, копирования дополни тельных файлов, чтения ответов на наиболее часто задаваемые вопросы и т. д. При повторных запусках Delphi это окно появляется автоматически с некоторой периодичностью, определяемой настройками на странице окна Tolls | Environment Options, связанной с закладкой Delphi Direct. Вы также сможете его вызвать в любой момент с помощью опции Help | Delphi Direct главного меню.
Видео:Общее, частное, базисное решение системы линейных уравнений Метод ГауссаСкачать
Таблица основных обозначений программы .
Обозначение | Описание | Модуль |
maxr | Константа для ограничения максимального размера системы | Unit2 |
arys, ary2s | Типы данных для переменных, в которых хранятся значения коэффициентов системы | Unit2 |
Gauss1 | Процедура для решения системы линейных уравнений методом Гаусса | Unit2 |
Gaussj | Процедура для решения системы линейных уравнений методом Жордана-Гаусса | Unit2 |
i,j,l | Счетчики | Unit1 |
prover | Промежуточная переменная типа String, используется для проверки наличия букв среди коэффициентов системы, а также для замены «.» на «,». | Unit1 |
S | Переменная для хранения размера матрицы | Unit1 |
k | Переменная для хранения длины строчки хранящейся в переменной prover. | Unit1 |
dl | Переменная для проверки размера системы. | Unit1 |
MainMenu1 | Меню программы. | Unit1 |
File1, New1, Save1, Exit1 | Пункты меню. | Unit1 |
Matrix, Coef, Gauss, Jgauss | Таблицы для ввода элементов системы и вывода результатов расчета. | Unit1 |
XPManifest1 | Компонент, который дает программе возможность использовать оформление Windows. | Unit1 |
SaveDialog1 | Диалоговое окно для сохранения результатов. | Unit1 |
Button1, Button2 | Кнопки для запуска процедур решения системы. | Unit1 |
New1Click | Процедура, которая выполняется после выбора пункта меню New. | Unit1 |
Button1Click | Процедура, которая выполняется после нажатия кнопки Gauss. | Unit1 |
Button2Click | Процедура, которая выполняется после нажатия кнопки J-Gauss. | Unit1 |
Save1Click | Процедура, которая выполняется после выбора пункта меню Save. | Unit1 |
Exit1Click | Процедура, которая выполняется после выбора пункта меню Exit. | Unit1 |
Form1 | Собственно окно программы. | Unit1 |
Описание процедур и алгоритм роботы программы
В программу включены следующие процедуры : « gauss 1», « gaussj », «New1Click», « Button 1 Click », « Button 2 Click », «Save1Click», « Exit 1 Click ». С каждой из них мы ознакомимся ниже.
Процедура « gauss 1» выполняет проверку системы на сходимость и решение методом Гаусса.
Процедура « gaussj » выполняет проверку системы на сходимость и решение методом Жордана-Гаусса.
Процедура «New1Click» выполняется после выбора пункта меню «New» или сразу после запуска программы и выполняет чтение размера системы и устанавливает размер таблиц для ввода коэффициентов системы.
Процедура « Button 1 Click » считывает коэффициенты системы, проверяет корректность ввода коэффициентов и заменяет при необходимости «.» на «,». Потом запускает процедуру « gauss 1» для решения системы и выводит результаты.
Процедура « Button 2 Click » считывает коэффициенты системы, проверяет корректность ввода коэффициентов и заменяет при необходимости «.» на «,». Потом запускает процедуру « gaussj » для решения системы и выводит результаты.
Процедура «Save1Click» запускает диалог сохранения файлов и выполняет сохранение результатов.
Процедура « Exit 1 Click » — Выход из программы.
Текст программы .
Файл-модуль unit1.pas
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Menus, XPMan, StdCtrls, Grids, unit2;
Решение задач линейной алгебры средствами Delphi: Метод Гаусса для решения систем линейных алгебраических уравнений
Автор работы: Пользователь скрыл имя, 13 Июня 2013 в 19:21, курсовая работа
Краткое описание
Данная программа писалась на языке Delphi в бесплатной среде Lazarus. Lazarus — свободная среда разработки программного обеспечения для компилятора Free Pascal (часто используется сокращение FPC— свободно распространяемый компилятор языка программирования Pascal) на языке Object Pascal. Интегрированная среда разработки предоставляет возможность кроссплатформенной разработки приложений в Delphi-подобном окружении. На данный момент является единственным инструментом быстрой разработки приложений (RAD), позволяющим Delphi-программистам создавать приложения с графическим интерфейсом для Linux (и других не-Windows) систем.
Позволяет достаточно несложно переносить Delphi-программы с графическим интерфейсом в различные операционные системы: Linux, FreeBSD, Mac OS X, Microsoft Windows, Android. Начиная с Delphi XE2 в самом Delphi имеется возможность компиляции программ для Mac OS X и iOS.
Содержание
1. Введение 3
2. Содержательная часть 4
2.1. История 4
2.2. Описание метода 4
2.3. Условие совместности 5
3. Практическая часть. 6
3.1. Постановка задачи 6
3.2. Методы решения линейных уравнений 6
3.3. Руководство пользователя 7
3.4. Листинг 9
4. Заключение 17
5. Список литературы 18
Прикрепленные файлы: 1 файл
Kursovaya_po_obektno-orientirovannomu_programmi.docx
Захаров Д.С., ИСТ-21д
Федеральное государственное бюджетное образовательное учреждение
высшего профессионального образования
«Себряковский филиал Волгоградского государственного архитектурно-строительного университета»
(ФГБОУ ВПО «СФ ВолгГАСУ»)
Кафедра Математических и естественно-научных дисциплин
Решение задач линейной алгебры средствами Delphi: Метод Гаусса для решения систем линейных алгебраических уравнений
по специальности 230400.62 «Информационные системы и технологии (бакалавр)»
Отрощенко Д.С., преподаватель
2. Содержательная часть 4
2.2. Описание метода 4
2.3. Условие совместности 5
3. Практическая часть. 6
3.1. Постановка задачи 6
3.2. Методы решения линейных уравнений 6
3.3. Руководство пользователя 7
4. Заключение 17
5. Список литературы 18
Введение
Для разработки курсового проекта была предоставлена задача: написать программу которая выводила бы решение системы линейных уравнений с тремя переменными методом Гаусса.
Метод Гаусса — классический метод решения системы линейных алгебраических уравнений (СЛАУ). Это метод последовательного исключения переменных, когда с помощью элементарных преобразований система уравнений приводится к равносильной системе ступенчатого (или треугольного) вида, из которой последовательно, начиная с последних (по номеру) переменных, находятся все остальные переменные.
Данная программа писалась на языке Delphi в бесплатной среде Lazarus. Lazarus — свободная среда разработки программного обеспечения для компилятора Free Pascal (часто используется сокращение FPC— свободно распространяемый компилятор языка программирования Pascal) на языке Object Pascal. Интегрированная среда разработки предоставляет возможность кроссплатформенной разработки приложений в Delphi-подобном окружении. На данный момент является единственным инструментом быстрой разработки приложений (RAD), позволяющим Delphi-программистам создавать приложения с графическим интерфейсом для Linux (и других не-Windows) систем.
Позволяет достаточно несложно переносить Delphi-программы с графическим интерфейсом в различные операционные системы: Linux, FreeBSD, Mac OS X, Microsoft Windows, Android. Начиная с Delphi XE2 в самом Delphi имеется возможность компиляции программ для Mac OS X и iOS.
Содержательная часть
История
Хотя в настоящее время данный метод повсеместно называется методом Гаусса, он был известен и до К. Ф. Гаусса. Первое известное описание данного метода — в китайском трактате «Математика в девяти книгах», составленном между I в. до н.э. и II в. н. э.
Описание метода
Пусть исходная система выглядит следующим образом
Матрица называется основной матрицей системы, — столбцом свободных членов.
Тогда согласно свойству элементарных преобразований над строками основную матрицу этой системы можно привести к ступенчатому виду (эти же преобразования нужно применять к столбцу свободных членов):
При этом будем считать, что базисный минор (ненулевой минор максимального порядка) основной матрицы находится в верхнем левом углу, то есть в него входят только коэффициенты при переменных .
Тогда переменные называются главными переменными. Все остальные называются свободными.
Если хотя бы одно число , где , то рассматриваемая система несовместна, т.е. у неё нет ни одного решения.
Пусть для любых .
Перенесём свободные переменные за знаки равенств и поделим каждое из уравнений системы на свой коэффициент при самом левом ( , где — номер строки):
Если свободным переменным системы (2) придавать все возможные значения и решать новую систему относительно главных неизвестных снизу вверх (то есть от нижнего уравнения к верхнему), то мы получим все решения этой СЛАУ. Так как эта система получена путём элементарных преобразований над исходной системой (1), то по теореме об эквивалентности при элементарных преобразованиях системы (1) и (2) эквивалентны, то есть множества их решений совпадают.
Условие совместности
Упомянутое выше условие для всех может быть сформулировано в качестве необходимого и достаточного условия совместности:
Теорема Кронекера — Капелли.
Система совместна тогда и только тогда, когда ранг её основной матрицы равен рангу её расширенной матрицы.
Практическая часть.
Постановка задачи
Дана система из n линейных уравнений вида:
3.2. Методы решения линейных уравнений
Системы линейных уравнений вида (3) решаются точными и итерационными методами. Точные методы дают точное решение за конечное число операций, если все они выполнялись без погрешности. Число операций итерационных методов зависит от заданной погрешности вычислений. Метод Гаусса является точным методом решения системы линейных уравнений.
Метод Гаусса или метод последовательного исключения неизвестных основан на приведении матрицы коэффициентов А=(aij) к треугольному виду. При этом алгоритм решения системы линейных уравнений следующий:
1. С помощью двух циклов с управляющими переменными i=1,2. n и j=1,2,…,n организуется ввод коэффициентов aij и bi образующих массивы A=(aij), B=(bi).
2.Делается прямой ход исключения переменных путем преобразования коэффициентов по формулам:
В конце этих преобразований получается xn=bn/ann.
3.Организуется обратный ход (последовательное нахождение xn-1, xn-2 , …, x2, x1), проводя вычисления по формулам:
Особенностью метода Гаусса является то, что при прямом ходе производится выбор элемента строки отличного от нуля, если элемент aii, стоящий на главной диагонали матрицы А, равен 0.
Этот выбор осуществляется путем перестановки соответствующих строк матрицы А. Это исключает деление на 0, если матрица A=(aij) содержит нулевые элементы на главной диагонали.
Руководство пользователя
Пользоваться данной программой довольно просто: начинать работу нужно с ввода коэффициентов при переменных x1,x2,x3 (для удобства в программе были изменены на переменные X, Y, Z).
После этого, следует обязательно нажать на кнопку «Вывести» для того чтобы программа вывела систему уравнений на экран для наглядности.
Однако, имеется ряд правил занесения коэффициентов в систему: в первое уравнение надлежит ставить уравнение, в котором есть первый коэффициент при Х. В обратном случае программа выдаст ошибку:
Затем при нажатии на кнопку «Ответ» программа выдаст результат:
В программу также добавлена возможность просматривать промежуточные системы уравнений, при так называемом «спуске». После вычисления можно продолжить высчитывать переменные в других системах уравнений, Программа будет работать до тех пор, пока не будет нажата кнопка «Exit».
Листинг
Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, Grids,