![]() |
|
сделать стартовой | добавить в избранное |
![]() |
Компьютеры, Программирование
Программное обеспечение
Разработка программы решения системы линейных уравнений |
Дальневосточная академия государственной службы (заочное обучение) Факультет государственного и муниципального управленияКУРСОВОЙ ПРОЕКТ по курсу: Информатика на тему: Разработка программы решения системы линейных уравненийВыполнил: студент 1 курса 3 годичной заочной формы обучения (внебюджет) группы Специальность: ГиМУ Воищев Алексей Юрьевичг. Хабаровск 2005 СодержаниеВведение 1. Описание математических методов решения систем линейных уравнений 1.1 Метод Гаусса 1.2 Матричный метод 1.3 Вычисление определителей второго и третьего порядка 2. Язык программирования Паскаль 2.1 Структура программы 2.2 Описание переменных 2.3 Основные конструкции языка 2.4 Структуры данных 2.4 Процедуры и функции 3. Описание программы 3.1 Работа программы 3.2 Блок-схема программы Заключение Заключение Список используемых источников и литературы Приложение Введение Последние десятилетия характеризуются бурным развитием вычислительной техники. Расширяются области применения вычислительных машин и совершенствуются методы их использования. Созданы универсальные языки программирования и разработаны мощные операционные системы. Сейчас невозможно представить себе какую-либо область деятельности, обходящуюся без применения компьютерной техники. Компьютеры используются при проведении различных инженерных расчетов, при решении экономических задач, в процессе управления производством, при получении оценок производственных ситуаций и во многих других случаях. Системы линейных уравнений появляются почти в каждой области прикладной математики. В некоторых случаях эти системы уравнений непосредственно составляют ту задачу, которую необходимо решать, в других случаях задача сводится к такой системе. Чтобы быстро справится с решением системы линейных уравнений, можно воспользоваться средствами вычислительной техники - составить программу на языке программирования. В данной курсовой работе рассматривается возможность решения систем линейных уравнений матричным способом и методом Гаусса с помощью программы, созданной на языке Паскаль. 1. Описание математических методов решения систем линейных уравнений 1.1 Метод ГауссаИдея метода Гаусса состоит в последовательном исключении неизвестных. Алгоритм решения системы уравнений этим методом проследим на примере.Пример 1. Выбирается ведущее уравнение с коэффициентом при х1, равным 1. В нашем примере ведущим уравнением будет второе. Систему лучше переписать, поставив это уравнение на первое место:Умножаем первое уравнение на 6 и вычитаем из полученного второе, чтобы исключить из второго неизвестное х1. Первое уравнение записываем, а на место второго - результат вычитания. Затем первое уравнение умножим на 3 и складываем с третьим уравнением. Тогда получаем систему Илипервое уравнение переписываем без изменения, а второе умножаем на 7 и вычитаем из него третье уравнение, умноженное на 15, чтобы избавиться от х2 в третьем уравнении. При этом второе записываем без изменения, на месте третьего - результат вычитания. ТогдаИз третьего следует х3 =-3, подставим его во второе, получим х2 = - 2. Далее подставим найденные х2 и х3 в первое уравнение, получим х1 = 1.
Решение системы: х1 = 1, х2 = - 2, х3= - 3. Примечание: если система уравнений не содержит уравнения с коэффициентом 1 при х1, тогда исключение х1 из второго и третьего достигается умножением сначала первого на коэффициент второго, а второго на коэффициент первого. Затем умножаем первое на коэффициент третьего, а третье на коэффициент первого. Таким образом при вычитании исключаем х1. 1.2 Матричный методЗапишем систему линейных 3 уравнений с 3 неизвестнымиСоставим матрицу из коэффициентов при неизвестныхА = Введем в рассмотрение матрицы - столбцы для неизвестных и свободных членов:Х = ; В = .Тогда систему (2) можно переписать в матричной формеАХ=ВУмножив это уравнение на слева, получим , откуда =или Следовательно, матрица - решение Х находится как произведение на В. Пример 2. Решить систему уравнений матричным методомРешение: определитель матрицыА=∆=-1, значит, существует обратная матрица . Матрица - столбец при неизвестных:Х = Матрица - столбец из свободных членов:В = Тогда решение запишется в виде==Откуда следует, х1 = 1; х2 = 0; х3 = 2. 1.3 Вычисление определителей второго и третьего порядкаЧисло (а11 а22 - а12 а21) называется определителем второго порядка и обозначается символомОпределитель второго порядка содержит две строки и два столбца. Числа а11, а12, а21, а22 называются элементами определителя. Диагональ определителя, на которой расположены числа а11, а22 - главная, а элементы а12, а21 составляют побочную диагональ. Определитель 3-го порядка содержит три строки и три столбца:Для вычисления определителя третьего порядка существует несколько способов. Рассмотрим метод вычисления определителя разложением по элементам первой строки. Введем понятие минора и алгебраического дополнения. Минором некоторого элемента определителя называется определитель, полученный из данного вычеркиванием той строки и того столбца в которых этот элемент расположен. Обозначается Мij (i - номер строки, j - номер столбца). Например, минором элемента а12 является определительАлгебраическим дополнением данного элемента определителя называется его минор, умноженный на (-1) i j. Алгебраические дополнения обозначаются буквами Аij, и тогда Аy= (-1) i j My. Определитель вычисляется так:=.Так же можно разложить определитель по любой строке или столбцу. Изложенный метод применим к вычислению определителей 4-го и т.д. порядков. Пример3. Вычислить определитель разложением по элементам первой строкиРешение: Элементы первой строкиа11 = 1, а12 = 2, а13 = - 2. А11 = (-1) 1 1. М11==4 1=5.М11 получили, вычеркнув первую строку и первый столбец.А12 = (-1) 1 2. М12= - = - (8 3) = - 11.М12 получили, вычеркнув первую строку и второй столбец.А13 = (-1) 1 3. М13 = = 2-3 = - 1.М13 получили, вычеркнув первую строку и третий столбец. Окончательно = 1.5 2. (-11) - 2. (-1) = - 15 2. Язык программирования Паскаль 2.1 Структура программыЯзык Паскаль, начиная с момента своего создания Н. Виртом в 1971г., играет особую роль м в практическом программировании, и в его обучении. С непревзойденной четкостью в нем реализованы принципы структурного программирования. Трансляторы для программ, написанных на Паскале, разработаны для различных компьютеров и в настоящее время имеют множество разновидностей.
Они являются компиляторами, обрабатывающими разработанные программистами тексты программ. Существует много версий языка Паскаль. Различия между ними порой весьма велики. Так, базовая версия Вирта имеет многократно меньше возможностей, чем версия Турбо-Паскаль 7.0. (первая, фактически - язык для обучения будущих программистов, а вторая - орудие профессиональных разработчиков прикладного программного обеспечения) Тем не менее, это версии одного языка. Любая Паскаль - программа является текстовым файлом с собственным именем и с расширением. pas. Паскаль - программа имеет вид последовательности символов латинских и русских букв, арабских цифр, знаков операций, скобок, знаков препинания и некоторых дополнительных символов. В нем можно выделить описания данных и операторы, описывающие действия, которые надо выполнить машине над этими данными. Схематически программа представляется в виде последовательности восьми разделов: заголовок программы; описание внешних модулей, процедур и функций; описание меток; описание констант; описание типов переменных; описание переменных; описание функций и процедур; раздел операторов. Каждый раздел начинается со служебного слова, назначение которого зафиксировано в Паскале так, что его нельзя употреблять для других целей. Так например, описание заголовка начинается со служебного слова program, описание констант -co s , описание переменных - var, раздел операторов начинается с begi . Программа заканчивается служебным словом e d, после которого ставится точка. Описания величин и операторы друг от друга отделяются знаком &quo ;точка с запятой&quo ;. 2.2 Описание переменныхДля обозначения величин используются имена. Они состоят из латинских букв и цифр, причем первым символом должна быть буква. Постоянные величины (константы) чаще всего бывают числовыми или символьными. Значения символьных констант заключаются в апострофы. Постоянные величины описываются в разделе констант по схеме: Co s &l ;имя&g ; = &l ; константа&g ; Данные, обрабатываемые программой, могут быть различных типов (числовые, символьные, строки, массивы и т.д.). Тип определяет область допустимых значений, а также операции и функции, применяемые к величинам этого типа. В Паскале имеется несколько встроенных простых типов со стандартными именами. Группа типов, значения каждого из которых можно перечислить в некотором списке - скалярные типы. Для них определен порядковая функция ord (x) - номер значения х в списке; функция pred (x) -значение в списке, предшествующее х, и succ (x) - значение в списке, следующее за х. Упорядоченный тип - это тип, значения которого упорядочены в обычном смысле. Переменные описываются в раздел описания переменных по схеме: Var &l ;список имен переменных&g ;: &l ;тип&g ; Имена в списке разделяются запятой. В этом разделе может быть описано несколько переменных разного типа, например: Var a,b,c,: real; k, i: i eger; p: Boolea ; Над целыми величинами (тип i eger) определены арифметические операции: (умножение), div (деление нацело), mod (вычисление остатка от деления), , - (сложение и вычитание); операции перечислены в порядке старшинства.
Разумеется, Algebrus знает элементарные (и не только) математические функции, так что наличие синуса (sin), логарифма (ln) или даже гамма-функции (Gamma) в выражении его не смутит. Впрочем, подобной функциональностью сейчас никого не удивишь, а Algebrusу по зубам и гораздо более сложные задачи. Например, команда LinearSolve позволяет легко решать системы линейных уравнений: в качестве аргументов ей подаются матрицы коэффициентов системы и вектор правых частей. Так, команда LinearSolve({{2,1},{1,2}},{4,5}) выдаст решение системы {2x+y=4, x+2y=5}. Среди других возможностей программы можно назвать операции с многочленами (поиск корней и экстремумов, дифференцирование и т. д.), решение простых геометрических задачек (таких как нахождение площадей многоугольников или вычисление третьей стороны треугольника по двум другим сторонам и углу между ними), статистические расчеты (например, можно посчитать корреляцию между двумя наборами чисел), численное интегрирование, решение обыкновенных дифференциальных уравнений и многие другие
2. Разработка мероприятий совершенствования системы стимулирования сбыта (на примере ООО «ДаНаМа»)
3. Проект регионального развития системы ипотечного кредитования (на примере города Хабаровска)
5. Программы системы 1С: Предприятие. Администрирование в программах 1С: Предприятие
9. Разработка мероприятий по увеличению экономической эффективности на примере ОАО Омскстройматериалы
10. Основы линейной алгебры на примере балансовой модели
11. Работа журналиста в прямом эфире на примере программ "Город сегодня" и "Как жить будем"
12. Разработка мероприятий по продвижению ресторанных услуг на примере предприятия "Латина-Лабамба"
13. Разработка бизнес-плана по закупке оборудования (на примере ООО "Саланг-Б")
14. Система интегрированного маркетинга на примере ОАО "Донецкая Мануфактура М"
15. Анализ и проектирование структуры системы управления фирмой (на примере ООО МСК "АСКО-ВАЗ")
16. Изучение, разработка и реализация антикризисной стратегии предприятии на примере ООО "Хольц"
18. Разработка мероприятий по улучшению качества услуг (на примере ООО "Строй-Арсенал")
21. Формы таможенного контроля в системе перемещения грузов на примере Махачкалинского таможенного поста
29. Решение системы линейных уравнений
30. Численное решение системы линейных алгебраических уравнений методом Гаусса
31. Итерационные методы решения системы линейных алгебраических уравнений
34. Разработка системы задач (алгоритмы-программы) по дискретной математике
35. Решение систем линейных алгебраических уравнений методом Гаусса и Зейделя
36. Линейные системы дифференциальных уравнений с периодическими коэффициентами
37. Разработка опорной Цифровой Системы Коммутации (на примере ЦСК "Квант-Е")
42. Решение системы нелинейных уравнений
43. Решение систем линейных дифференциальных уравнений пятиточечным методом Адамса – Башфорта
45. Принципы разработки алгоритмов и программ для решения прикладных задач
46. Разработка алгоритма и программы для вычисления коэффициента оперативной готовности системы
48. Решение линейных интегральных уравнений
49. Решение систем линейных алгебраических уравнений (прямые методы)
50. Численные методы решения систем линейных уравнений
53. Аналитические свойства решений системы двух дифференциальных уравнений третьего порядка
57. Нахождение корня нелинейного уравнения. Методы решения системы нелинейных уравнений
58. Метод Гаусса для решения систем линейных уравнений
59. Разработка и анализ управленческой системы на примере ОАО "Salsa"
60. Разработка системы автоматизации технологического процесса на примере установки ЭЛОУ-АВТ
62. Разработка алгоритмов контроля и диагностики системы управления ориентацией космического аппарата
65. Решение дифференциальных уравнений 1 порядка методом Эйлера
67. Информационно-поисковые системы на примере "Рамблера"
68. Разработка информационно-справочной системы "Характеристика предприятия" /Prolog/
69. Разработка информационно-справочной системы "Водительское удостоверение" /Prolog/
73. Экспертные системы. Классификация экспертных систем. Разработка простейшей экспертной системы
76. Разработка информационно-справочной системы
78. Разработка информационно-справочной системы "Технический паспорт автомобиля"
80. Разработка информационно-справочной системы "Зарплата по НИР"
81. Разработка программы на Ассемблере
82. Разработка лабораторного практикума "Создание тестирующей программы"
84. Разработка игровой программы на языке программирования Turbo Pascal
89. Разработка системы реального времени в виде планировщика исполнения заданий
90. Разработка системы автоматического управления
91. Решение систем дифференциальных уравнений методом Рунге-Куты 4 порядка
92. Решение уравнений, систем уравнений, неравенств графически
93. Решение оптимизационной задачи линейного программирования
94. Методы решения систем линейных неравенств
95. Решение задачи линейного программирования
96. Решение задач линейной оптимизации симплекс – методом
97. Приближённые методы решения алгебраического уравнения
98. Решение дифференциальных уравнений 1 порядка методом Эйлера
99. Загрязнение атмосферы и решение этой проблемы на примере Санкт-Петербурга