Внимание! diplom-mania.ru не продает дипломы, аттестаты об образовании и иные документы об образовании. Все услуги на сайте предоставляются исключительно в рамках законодательства РФ.

Заказать курсовую работу

  8-800-523-11-72

КОНТРОЛЬНЫЕ РАБОТЫ
КУРСОВЫЕ РАБОТЫ
ОТЧЕТ ПО ПРАКТИКЕ
ДИПЛОМНЫЕ РАБОТЫ
КУРСОВОЙ ПРОЕКТ

Транспортная задача

Проективный метод исследования потребителя

Поэтому перед психологами поставили задачу: как узнать у потребителей то, что они на самом деле думают. Тогда была разработан специальный метод исследования потребителей. «Проективный метод — один из

Оптоволокно

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

Преступления против жизни

Лишение жизни другого человека является убийством, биологическая жизнь человека является предметом посягательства. Жизнь как предмет посягательства существует тогда, когда человек родился и еще не уме

Контрольная работа по муниципальному праву Вариант 2

Класссификация муниципально-правовых норм: 1. По объекту правового регулирования , то есть по кругу регулируемых отношений: · нормы, регулирующие общественные отношения в области основ местного самоуп

Разделение властей в правовом государстве

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

Функции белков в организме

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

Посредничество

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

Стратегия ценообразования

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

Скачать работу - Транспортная задача

Требуется написать программу оптимизации транспорта энергии, газа, трубопроводных систем различного назначения по заданной схеме, решить систему уравнений заданным методом. 2. Спецификация. 2.1. Название задачи. По заданной схеме (3): следует найти в ходе выполнения работы направления потоков по ветвям и их величину P (в условных единицах). 2.2 Описание задачи.

Выберем произвольное направление на схеме по ветвям для формирования матрицы A : Таким образом, получим матрицу A вида: Таб.№1. Ветви SHAPE * MERGEFORMAT

-1 0 0 0 1 0 0
0 -1 0 0 -1 -1 0
0 0 1 0 0 1 1
0 0 0 1 0 0 -1
1 1 -1 -1 0 0 0
Узлы
1 2 3 4 0
0-1 0-2 0-3 0-4 1-2 2-3 3-4 Затем введём диагональную матрицу R , элементами которой являются заданные стоимости перевозок по отдельным ветвям. R = Можно показать, опуская преобразования, связанные с поиском минимума целевой функции F , что искомый вектор потоков Р можно вычислить (в матричной форме) как = - R -1 t . Где R -1 – матрица, обратная матрице R , A t – транспонированная матрица А, - вектор Лагранжа (потенциалов), который предварительно должен быть найден из решения системы уравнений в матричной форме: A -1 t = . Вектор Q - объём производства в узлах схемы, которые задаются в качестве входных данных по вариантам работы, и входит в уравнение: A + = 0 , Таблица соответствия:
Ветви Начало Конец Стоимость
1 0 1 4
2 0 2 5
3 0 3 7
4 0 4 6
5 1 2 5
6 2 3 8
7 3 4 5
2.3. Управление программой. В среде Turbo Pascal программа после подготовки текста программы можно попытаться исполнить её, т.е. откомпилировать программу, связать её (если это необходимо) с библиотекой стандартных процедур и функций, загрузить в оперативную память и передать её управление. Вся эта последовательность действий называется прогоном программы и реализуется командой Ctrl + F 9 или нажатием мышкой на панели меню раздел Run и далее Run . Если в программе нет синтаксических ошибок, то все действия выполняются последовательно одно за другим, при этом в небольшом окне сообщается о количестве откомпилированных строк и объёме доступной оперативной памяти. Перед передачей управления загруженной программе среда очищает экран (точнее, выводит на экран окно прогона программы), а после завершения работы программы вновь берёт управление компьютером на себя и восстанавливает на экран окно редактора. Итак, нажимаем Ctrl + F 9 или выбираем из меню Run + Run , появляется голубой экран, которым является оформление курсовой работы, через некоторое время на экране появляется меню с 10-ю пунктами, выбрав любой пункт из меню, можно просмотреть интересующие результаты вычислений. 2.4. Входные данные Ввод данных – это передача информации от внешних устройств в оперативную память.

Вводятся, как правило, исходные данные решаемой задачи. В моём курсовом проекте входными данными являются числа от 0 до 9, которые вводятся при выборе пункта меню с цифровой клавиатуры. В разделе переменных они у меня записаны типом Byte . Byte – это целочисленный тип данных я его взял потому, что числа от 0 до 9 являются целыми числами. Длина Byte – 1 байт, а диапазон значений от 0 до 255. 2.5. Выходные данные. Вывод данных – это обратный процесс вводу данных, когда данные передаются из оперативной памяти на внешние носители (принтер, дисплей, магнитные устройства и т.д.). Результаты решения всякой задачи должны быть выведены на один из этих носителей. Как и в моем курсовом проекте все результаты вычислений выводятся на дисплей монитора.

Основным устройством вывода у персонального компьютера является дисплей (экран монитора). Все результаты вычислений я выводил на дисплей с помощью оператора Write ( ). Здесь элементами списка вывода могут быть выражения различных типов (в частности, константы и переменные). У меня элементами списка вывода являются переменные.

Второй вариант процедуры вывода на экран: Writeln ( ), слово – Write line – означает писать строку. Его действие отличается от оператора Write тем, что после вывода последнего в списке значения происходит перевод курсора к началу следующей строки.

Оператор Writeln , записанный без параметров, вызывает перевод строки.

Форматы вывода . В списке вывода могут присутствовать указатели форматов вывода (форматы). Формат определяет представление выводимого значения на экране. Он отделяется от соответствующего ему элемента двоеточием. Если указатель формата отсутствует, то машина выводит значение по определенному правилу, предусмотренному по умолчанию. 2.6. Пример Для тестирования программы нужно запустить программу нажатием Ctrl + F 9 и дождаться появления меню, затем нужно ввести с клавиатуры цифру 1 и сравнить результат выведенной матрицы с матрицей приведённой в таблице №1(выделенное заливкой), они должны совпасть. 3. Проектирование и алгоритмизация. Метод решения задачи – метод Крамера(по предложенному преподавателем). Метод Крамера имеет весьма простую схему. Пусть detA – определитель матрицы А, а detA i – определитель матрицы A i , полученной в матрице А столбца с номером i столбцов свободных членов. Тогда метод Крамера сводится к вычислению detA , detA i , i =1,2,…, n , после чего значения неизвестных определяются элементарными соотношениями Xi=detA i / detA , i =1,2,… n Определители в этой формуле вычисляются с помощью усеченного метода Гаусса.

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

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

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

Достаточно прост и нагляден, обеспечивает приемлемое быстродействие для систем невысокого порядка.

Сохраняет преимущества и недостатки методов вычисления определителей. Как вычислительный метод в научных и технических задачах применяется редко. Блок-схема работы программы : SHAPE * MERGEFORMAT

Начало
Формирование матрицы А
Формирование матрицы R
Нахождение обратной матрицы R1
Транспонирование матрицы А
Вычисление матрицы AR1At
Решение системы уравнений методом Крамера
Нахождение вектора
Конец
3.1 Формирование матрицы А: SHAPE * MERGEFORMAT
Начало
A[1,1] := -1; A[1,2] := 0; И т.д.
Конец
3.2 Формирование матрицы R : SHAPE * MERGEFORMAT
Начало
for i := 1 to 7 do for j := 1 to 7 do
If i = j then
R[i,j] := c[i]
R[i,j] := 0
да
нет
Конец
3.3 Формирование обратной матрицы R 1: SHAPE * MERGEFORMAT
Начало
For I := 1 to 7 do For j := 1 to 7 do
If I = j then
R1[i , j]:= 1/r[I,j];
R1[I,j] := 0
Конец
3.4 Транспонирование матрицы А: SHAPE * MERGEFORMAT
Начало
For I := 1 to 4 do For j := 1 to 7 do
At [j, i] := A [i, j]
Конец
3.5 Вычисление матрицы AR1At : SHAPE * MERGEFORMAT
Начало
For I := 1 to 4 do For j := 1 to 4 do
S := 0 For k := 1 to 7 do
S := s + A[I,k]*R1At[k,j]
U[I,j] := s
Конец
3.6 Решение системы уравнений методом Крамера : 3.6.1 Описание процедуры замены: SHAPE * MERGEFORMAT
Начало
For I := 1 to 4 do U[I,n] := Q[i]
Конец
3.6.2 Описание процедуры Opr : SHAPE * MERGEFORMAT
Начало
Dv := u[1,1]*u[2,2]*u[3,3]*u[4,4] + u[1,2]*u[2,3]*u[3,4]*u[4,1] + u[1,3]*u[2,4]*u[3,1]*u[4,2] - u[1,4]*u[2,3]*u[3,2]*u[4,1] - u[1,1]*u[2,4]*u[3,3]*u[4,1] - u[1,2]*u[2,1]*u[3,4]*u[4,3];
Конец
3.6.3 Вычисление Х-ов: SHAPE * MERGEFORMAT
Начало
u1 := u; opr; d := dv; n := 1; zamena;
opr; d1 := dv; u := u1; n := 2; zamena;
opr; d3 := dv; u := u1; n := 4; zamena;
opr; d4 := dv; x1 := d1/d; x2 := d2/d; x3 := d3/d; x4 := d4/d; x[1] := x1;x[2] := x2; x[3] := x3;x[4] := x4;
opr; d2 := dv; u := u1; n := 3; zamena;
Конец
3.7 Нахождение вектора Р: SHAPE * MERGEFORMAT
Начало
For I := 1 to 7 do S := 0
For k := 1 to 4 do s := s + r1at[i,k] * x[k]; p[i] := -s
Конец
4. Кодирование алгоритма. В моём курсовом проекте я использовал 3 одномерных массива: X : array [1..4] of real ; P : array [ 1..7] of real; pr : array [1..4] of real; Одномерный массив Х вещественного типа мне потребовался для формирования столбца из полученных корней уравнения, решенного методом Крамера.

Массив Р, вещественного типа, я использовал для формирования столбца значений вектора потоков Р. Массив Pr , вещественного типа, я применил для формирования столбца проверочных данных. Так же было использовано 6 двумерных массивов: At : array [1..7,1..4] of shortint; R : array [1..7,1..7] of shortint; R1 : array [1..7,1..7] of real; R1At : array [1..7,1..4] of real; A : array [1..4,1..7] of shortint; U,U1 : array [1..4,1..4] of real; Массив At используется для формирования транспонированной матрицы А размерностью 7 строк и 4 столбца, элементы которой типа Shortint (т.к. все элементы матрицы являются целыми числами, а в Shortint входят все числа от -128 до +128 ). Массив R используется для формирования диагональной матрицы размером 7 строк на 7 столбцов все элементы этой матрицы, как и элементы матрицы At Shortint типа.

Массив R 1 – матрица размером 7 строк на 7 столбцов обратная матрице R типа real (вещественный тип данных) т.к. при формировании обратной матрицы нужно применить деление, а при делении частное получается почти всегда вещественного типа.

Массив R 1 At – матрица размером 7 строк на 4 столбца, полученная в результате умножения матрицы R 1 на матрицу At , элементы этой матрицы, как и элементы массива R 1 типа real . Массив A – матрица элементов таб.№1(выделено заливкой) размером 4 строки на 7 столбцов тип Shortint . Массивы U и U 1 – это матрица размером 4 строки на 4 столбца полученная в результате умножения: A тип элементов матрицы real . Переменную S я использовал в процедурах умножения матриц, в качестве счётчика тип этой переменной вещественного типа real . Переменные х1,х2,х3,х4 использованы в решении уравнения методом Крамера в качестве корней уравнения. Тип этих переменных так же вещественный. d , dv , d 1, d 2, d 3, d 4 – переменные вещественного типа d – требуется для создания копии главного определителя dv . d 1 - d 4 – определители требующиеся для нахождения корней уравнения.

Переменные i , j нужны для счётчиков в операциях с матрицами i – это строки, j – это столбцы тип этих переменных integer (целый тип данных). Переменная k использована при умножении матриц в качестве дополнительного счётчика тип integer . n – переменная, использованная в процедуре замены для определения номера вырезаемого столбца тип переменной – integer . nr – переменная типа byte (длина 1 байт, диапазон значений от 0 до 255) потребовалась в процедуре номеров пунктов меню. 5. Руководство ползователя. 5.1 Пуск Запуск из среды Turbo Pascal производится нажатием клавиш Ctrl + F 9, а из Norton Commander нажатием клавиши Enter на файле Inform . exe . 5.2 Ввод данных Ввод данных производится только с цифровой клавиатуры. Цифры от 0 до 9. 5.3 Просмотр результатов. После ввода цифры(нужного пункта в меню) выводится требуемый результат и после просмотра результата нужно нажать Enter . Затем вновь появится меню на экране. 5.4 Выход из программы Выход из программы в среде Turbo Pascal и после запуска Inform . exe файла производится 0-ым пунктом меню.

оценка самолета стоимость в Смоленске
оценка ноу хау в Курске
оценка имущества для наследства в Твери