Разработка электронного учебного методического комплекса по изучению раздела "Симплексный метод решения задачи линейного программирования" дисциплины "Математические методы" - Программирование, компьютеры и кибернетика дипломная работа

Разработка электронного учебного методического комплекса по изучению раздела "Симплексный метод решения задачи линейного программирования" дисциплины "Математические методы" - Программирование, компьютеры и кибернетика дипломная работа




































Главная

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

Особенности задач линейного программирования. Симплексный метод решения задач линейного программирования. Обоснование выбора языка, инструментария программирования, перечень идентификаторов и блок-схема алгоритма. Логическая схема работы программы.


посмотреть текст работы


скачать работу можно здесь


полная информация о работе


весь список подобных работ


Нужна помощь с учёбой? Наши эксперты готовы помочь!
Нажимая на кнопку, вы соглашаетесь с
политикой обработки персональных данных

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

· изучение метода решения задачи линейного программрования, приведенного к стандартному виду;
· определение основных функций электронного учебного методического комплекса;
· выбор инструментария программирования;
· описание алгоритмов работы программы;
· разаработка логической и реализация физической структуры приложения;
· тестирование правильности работы программы и алгоритм её использования;
· расчет эконормической эффективности создания программы.
2. Производить протокол расчета решения задачи;
3. Выдавать справочную информацию по теории решения задачи;
4. Вести базу данных тестовых материалов по заданной теме;
5. Вести базу данных учетных записей пользователей тестовой системы;
6. Проводить тестирование с выдачей и сохранением результатов.
Программа для решения задач Симплекс - методом и система тестового контроля знаний студентов написана на языке программирования С++ и отлажена в среде Borland C++ Builder 6.0.
Си++ (англ. C++) -- компилируемый статически типизированный язык программирования общего назначения. Поддерживает разные парадигмы программирования, но в сравнении с его предшественником -- языком Си, -- наибольшее внимание уделено поддержке объектно-ориентированного и обобщённого программирования.
C++ -- чрезвычайно мощный язык, содержащий средства создания эффективных программ практически любого назначения, от низкоуровневых утилит и драйверов до сложных программных комплексов самого различного назначения. В частности:
· Поддерживаются различные стили и технологии программирования, включая традиционное директивное программирование, ООП, обобщённое программирование, метапрограммирование (шаблоны, макросы).
· Предсказуемое выполнение программ является важным достоинством для построения систем реального времени. Весь код, неявно генерируемый компилятором для реализации языковых возможностей (например, при преобразовании переменной к другому типу), определён в стандарте. Также строго определены места программы, в которых этот код выполняется. Это даёт возможность замерять или рассчитывать время реакции программы на внешнее событие.
· Автоматический вызов деструкторов объектов при их уничтожении, причём в порядке, обратном вызову конструкторов. Это упрощает (достаточно объявить переменную) и делает более надёжным освобождение ресурсов (память, файлы, семафоры и т. п.), а также позволяет гарантированно выполнять переходы состояний программы, не обязательно связанные с освобождением ресурсов (например, запись в журнал).
· Пользовательские функции-операторы позволяют кратко и ёмко записывать выражения над пользовательскими типами в естественной алгебраической форме.
· Язык поддерживает понятия физической (const) и логической (mutable) константности. Это делает программу надёжнее, так как позволяет компилятору, например, диагностировать ошибочные попытки изменения значения переменной. Объявление константности даёт программисту, читающему текст программы дополнительное представление о правильном использовании классов и функций, а также может являться подсказкой для оптимизации. Перегрузка функций-членов по признаку константности позволяет определять изнутри объекта цели вызова метода (константный для чтения, неконстантный для изменения). Объявление mutable позволяет сохранять логическую константность при использовании кэшей и ленивых вычислений.
· Используя шаблоны, возможно создавать обобщённые контейнеры и алгоритмы для разных типов данных, а также специализировать и вычислять на этапе компиляции.
· Возможность имитации расширения языка для поддержки парадигм, которые не поддерживаются компиляторами напрямую. Например, библиотека Boost.Bind позволяет связывать аргументы функций.
· Возможность создания встроенных предметно-ориентированных языков программирования. Такой подход использует, например библиотека Boost.Spirit, позволяющая задавать EBNF-грамматику парсеров прямо в коде C++.
· Используя шаблоны и множественное наследование можно имитировать классы-примеси и комбинаторную параметризацию библиотек. Такой подход применён в библиотеке Loki, класс SmartPrt которой позволяет, управляя всего несколькими параметрами времени компиляции, сгенерировать около 300 видов «умных указателей» для управления ресурсами.
· Кроссплатформенность: стандарт языка накладывает минимальные требования на ЭВМ для запуска скомпилированных программ. Для определения реальных свойств системы выполнения в стандартной библиотеке присутствуют соответствующие возможности (например, std::numeric_limits ). Доступны компиляторы для большого количества платформ, на языке C++ разрабатывают программы для самых различных платформ и систем.
· Эффективность. Язык спроектирован так, чтобы дать программисту максимальный контроль над всеми аспектами структуры и порядка исполнения программы. Ни одна из языковых возможностей, приводящая к дополнительным накладным расходам, не является обязательной для использования -- при необходимости язык позволяет обеспечить максимальную эффективность программы.
· Имеется возможность работы на низком уровне с памятью, адресами.
· Высокая совместимость с языком Си, позволяющая использовать весь существующий Си-код (код на Си может быть с минимальными переделками скомпилирован компилятором C++; библиотеки, написанные на Си, обычно могут быть вызваны из C++ непосредственно без каких-либо дополнительных затрат, в том числе и на уровне функций обратного вызова, позволяя библиотекам, написанным на Си, вызывать код, написанный на С++).
Borland C++ Builder 6.0 -- это комплексное решение для быстрой разработки приложений Windows®, .NET, веб-приложений и приложений баз данных.
Основные возможности для разработки приложений Windows
* Интегрированная среда разработки C++Builder с функцией “перетаскивания мышью”.
* Более 250 компонентов в библиотеке VCL.
* dbExpress с поддержкой 9 основных баз данных, включая InterBase®.
* DataSnap с поддержкой JSON, REST, HTTP, COM и XML.
* Возможность отладки многопоточных приложений.
* UML/аудит кода и учет показателей.
Метка, содержащая текст «Количество коэффициентов:».
Метка, содержащая текст «Стремится к:».
Поле для ввода количества коэффициентов.
Кнопка вызова процедуры применения параметров, введенных в CSpinEdit1, для таблиц StringGrid1 и StringGrid2.
Метка, содержащая текст «Количество ограничений».
Поле для ввода количества строк ограничений.
Таблица для ввода исходных данных системы ограничений.
Кнопка вызова процедуры применения параметров, введенных в CSpinEdit1, для таблицы StringGrid2.
Таблица для ведения расчетов Симплекс - методом.
Многострочный текст. Используется для формирования файла отчета в *.html.
Переменная целочисленного типа, используется в качестве счетчика цикла.
Переменная целочисленного типа, используется в качестве счетчика цикла.
Переменная строкового типа, используется для формирования текста информации об ошибке ввода данных.
Переменная строкового типа, используется для формирования текста информации об ошибке ввода данных.
Переменная строкового типа, используется для формирования текста информации об ошибке ввода данных.
Переменная целочисленного типа, используется для идентификации ошибок ввода данных.
Переменная целочисленного типа, используется для идентификации ошибок ввода данных.
Переменная вещественного типа, используется для хранения преобразования преобразованных данных.
Переменная целочисленного типа, используется в качестве счетчика итераций процесса.
Переменная целочисленного типа, используется для поиска отрицательных элементов в нижней строке.
Переменная вещественного типа, используется для хранения значения минимального отрицательного элемента нижней строки.
Переменная целочисленного типа, используется для хранения номера столбца, соответствующего минимальному отрицательному элементу в нижней строке.
Переменная целочисленного типа, используется для поиска положительных элементов в столбце, соответствующем минимальному отрицательному значению нижней строки.
Переменная целочисленного типа, используемая в качестве счетчика отношений элементов столбца «План» и положительных элементов столбца, соответствующему минимальному отрицательному значению нижней строки.
Массив структур, используемых для поиска минимального отношения элементов столбца «План» и положительных элементов столбца, соответствующему минимальному отрицательному значению нижней строки.
Переменная целочисленного типа, используется для хранения номера выводимой строки.
Переменная вещественного типа, используется для хранения значения минимального отношения элементов столбца «План» и положительных элементов столбца, соответствующему минимальному отрицательному значению нижней строки.
Переменная вещественного типа, используется для хранения результирующего значения при расчетах в Симплекс - таблице.
Переменная вещественного типа, используется для хранения разрешающего элемента таблицы.
Переменная вещественного типа, используется для хранения значения текущей ячейки таблицы при расчетах в Симплекс - таблице.
Переменная вещественного типа, используется для хранения значения элемента из разрешающего столбца , соответствующего текущему элементу, при расчетах в Симплекс - таблице.
Переменная вещественного типа, используется для хранения значения элемента введенной строки , соответствующего текущему элементу.
Компонент, служащий для преобразования файла отчета Report.html.
Кнопка вызова процедуры печати текста отчета работы программы.
Кнопка вызова процедуры закрытия формы отчета Form2.
Метка, содержащая текст «Система электронного тестирования "eTest"».
Метка, содержащая текст «Для того чтобы пройти тестирования, Вам необходимо быть зарегистрированным в базе данных программы».
Метка, содержащая текст «Если Вы зарегистрированы, то Вам необходимо авторизоваться и начать тестирование».
Кнопка вызова формы регистрации Form2.
Кнопка вызова формы авторизации Form5.
Кнопка вызова формы тестирования Form9.
Переменная целочисленного типа, используется для хранения ID - номера авторизованного пользователя.
Переменная строкового типа, используется для хранения логина авторизованного пользователя.
Переменная строкового типа, используется для хранения имени авторизованного пользователя.
Переменная строкового типа, используется для хранения фамилии авторизованного пользователя.
Переменная строкового типа, используется для хранения номера группы авторизованного пользователя.
Переменная строкового типа, используется для хранения статуса авторизованного пользователя.
Переменная строкового типа, используется для хранения даты регистрации авторизованного пользователя.
Переменная строкового типа, используется для хранения времени регистрации авторизованного пользователя
Переменная строкового типа, используется для хранения информации о блокировке аккаунта зарегистрированного пользователя
Переменная строкового типа, используется для хранения информации об активности текущей учетной записи авторизованного пользователя
Метка, содержащая текст «Подтверждение пароля:».
Метка, содержащая текст «Фамилия:».
Кнопка вызова процедуры регистрации в базе
Кнопка отмены процедуры регистрации
Кнопка вызова процедуры очистки полей формы
Переменная типа Дата/время, используется для хранения текущих даты и времени.
Переменная целочисленного типа, используется для хранения максимального ID - номера пользователя базы данных.
Таблица, используемая для вывода результатов запросов к базе данных.
Переключатель, используемый для вывода информации о результатах тестирования в таблицу DBGrid1..
Переключатель, используемый для вывода вопросов и ответов в таблицу DBGrid1.
Переключатель, используемый для вывода вопросов тестирования в таблицу DBGrid1.
Переключатель, используемый для вывода списка пользователей в таблицу DBGrid1.
Кнопка вызова процедуры формирования отчета за определенную дату.
Кнопка вызова процедуры формирования отчета за определенный период.
Многострочный текст, используется для формирования файла отчета.
Кнопка вызова формы конструктора вопросов Form7.
Кнопка вызова формы регистрации Form2.
Кнопка вызова формы авторизации Form5.
Кнопка вызова формы информации о текущей сессии Form6.
Кнопка вызова формы тестирования Form9.
Переменная целочисленного типа, используется в качестве счетчика цикла.
Переменная строкового типа, используется для хранения введенной даты.
Переменная строкового типа, используется для хранения введенной даты.
Переменная строкового типа, используется для хранения введенной даты.
Кнопка вызова процедуры входа в систему и авторизации.
Переменная целочисленного типа, используется для хранения ID - номера авторизованного пользователя.
Переменная строкового типа, используется для хранения логина авторизованного пользователя.
Переменная строкового типа, используется для хранения имени авторизованного пользователя.
Переменная строкового типа, используется для хранения фамилии авторизованного пользователя.
Переменная строкового типа, используется для хранения номера группы авторизованного пользователя.
Переменная строкового типа, используется для хранения статуса авторизованного пользователя.
Переменная строкового типа, используется для хранения даты регистрации авторизованного пользователя.
Переменная строкового типа, используется для хранения времени регистрации авторизованного пользователя
Переменная строкового типа, используется для хранения информации о блокировке аккаунта зарегистрированного пользователя
Переменная строкового типа, используется для хранения информации об активности текущей учетной записи авторизованного пользователя
Форма информации о текущей сессии Form6
Метка с текстом «Дата регистрации:».
Метка с текстом «Время регистрации:».
Метка для вывода ID - номера авторизованного пользователя.
Метка для вывода имени авторизованного пользователя.
Метка для вывода фамилии авторизованного пользователя.
Метка для вывода группы авторизованного пользователя.
Метка для вывода статус авторизованного пользователя.
Метка для вывода даты регистрации авторизованного пользователя.
Метка для вывода времени регистрации авторизованного пользователя.
Метка для вывода информации о блокировке авторизованного пользователя.
Метка для вывода информации об активности авторизованного пользователя.
Форма конструктора вопросов на выборку Form7
Переключатель типа вопроса. Установлен на вопрос - выборку.
Переключатель Типа вопроса. Переключает на вопрос, который требует письменного ответа.
Метка с текстом «Варианты ответа:».
Метка с текстом «Количество вариантов:».
Многострочный текст, используется для ввода текста вопроса.
Поле для ввода количества вариантов ответа.
Кнопка вызова процедуры формирования компонентов на форме.
Кнопка вызова процедуры изменения вариантов ответа.
Кнопка вызова процедуры сохранения вопроса и ответов к нему в базе.
Массив типа TLabel, используется для формирования меток на форме.
Массив типа TEdit, используется для формирования полей ввода на форме.
Массив типа TRadioButton, используется для формирования переключателей на форме.
Переменная целочисленного типа, используется в качестве счетчика по циклу.
Переменная строкового типа, используется для хранения текста ошибки.
Переменная целочисленного типа, используется для обнаружения ошибок при заполнении полей.
Переменная целочисленного типа, используется для обнаружения ошибок при выборе верного ответа.
Переменная строкового типа, используется для хранения текста для хэширвоания.
Переменная целочисленного типа, используется для хранения количества вопросов в базе.
Переменная целочисленного типа, используется для хранения количества ответов в базе.
Форма конструктора вопросов, требующих письменного ответа Form8
Переключатель типа вопроса. Установлен на вопрос, требующий ответ.
Переключатель типа вопроса. Переключает на вопрос - выборку.
Поле, для вывода адреса загружаемого на изображения.
Кнопка вызова процедуры загрузки изображения.
Кнопка вызова процедуры сохранения вопроса и ответа в базу
Многострочный текст, используется для ввода текста вопроса.
Компонент, используемый для вывода изображения.
Переменная строкового типа, используется для хранения имени графического файла.
Переменная строкового типа, используется для хранения имени графического файла.
Переменная строкового типа, используется для хранения адреса текущей директории.
Переменная строкового типа, используется для хранения имени графического файла.
Переменная строкового типа, используется для хранения текста ошибки.
Переменная целочисленного типа, используется для обнаружения ошибок при заполнении полей.
Переменная целочисленного типа, используется для хранения количества вопросов в базе.
Переменная целочисленного типа, используется для хранения количества ответов в базе.
Метка с текстом «Варианты ответа:».
Метка для вывода ID - номера авторизованного пользователя.
Метка для вывода логина авторизованного пользователя.
Метка для вывода имени авторизованного пользователя.
Метка для вывода фамилии авторизованного пользователя.
Метка для вывода группы авторизованного пользователя.
Метка для вывода статус авторизованного пользователя.
Метка для вывода информации об активности авторизованного пользователя.
Метка для вывода номера текущего вопроса.
Метка для вывода количества вопросов текущего тестирования.
Многострочный текст, используется для вывода текста вопроса.
Многострочный текст, используется для формирования файла отчета о тестировании.
Кнопка вызова процедуры начала тестирования
Кнопка вызова процедуры переключения вопросов тестирования
Кнопка вызова процедуры завершения тестирования
Переменная целочисленного типа, используется для хранения ID - номера авторизованного пользователя.
Переменная строкового типа, используется для хранения логина авторизованного пользователя.
Переменная строкового типа, используется для хранения имени авторизованного пользователя.
Переменная строкового типа, используется для хранения фамилии авторизованного пользователя.
Переменная строкового типа, используется для хранения номера группы авторизованного пользователя.
Переменная строкового типа, используется для хранения статуса авторизованного пользователя.
Переменная строкового типа, используется для хранения даты регистрации авторизованного пользователя.
Переменная строкового типа, используется для хранения времени регистрации авторизованного пользователя
Переменная строкового типа, используется для хранения информации о блокировке аккаунта зарегистрированного пользователя
Переменная строкового типа, используется для хранения информации об активности текущей учетной записи авторизованного пользователя
Переменная целочисленного типа, используется для хранения номера текущего вопроса.
Переменная целочисленного типа, используется для хранения номера текущего ответа.
Переменная целочисленного типа, используется для хранения количества вопросов.
Переменная целочисленного типа, используется для хранения количества ответов.
Переменная целочисленного типа, используется для хранения количества данных ответов.
Переменная целочисленного типа, используется для хранения количества правильных ответов.
Переменная целочисленного типа, используется для определения типа предыдущего вопроса.
Переменная целочисленного типа, используется в качестве счетчика цикла.
Переменная строкового типа используется для определения типа текущего вопроса.
Переменная целочисленного типа, используется для хранения номера выбранного варианта ответа.
Переменная строкового типа, используется для хранения текста ошибки.
Переменная целочисленного типа, используется для обнаружения ошибок при заполнении полей.
Переменная текстового типа, используется для хранения текста для хэшиварования правильного ответа
Переменная текстового типа, используется для хранения текста для хэшиварования неправильного ответа
Переменная строкового типа, используется для хранения адреса текущей директории.
Переменная типа Дата/Время, используется для хранения даты и времени.
Переменная целочисленного типа, используется для хранения номера последней записи в таблице TestResults базы данных.
Блок - схема модуля конструктора вопросов 1
Блок - схема модуля конструктора вопросов 2
Рис. 6.1. Головная форма программы Symplex
Пользователь должен выставить количество коэффициентов, затем нажать кнопку «Применить». Таблицы для ввода исходных данные преобразуются и примут вид, соответствующий заданному параметру. Необходимо заполнить таблицу, коэффициентами целевой функции. Затем нужно выбрать, к чему стремится функция.
Далее необходимо выставить число ограничений и нажать кнопку «Применить». Таблица для ввода системы ограничений преобразуется и примет вид, соответствующий заданному параметру.
Далее необходимо заполнить таблицу системы ограничений и нажать кнопку «Решить». Кнопка «Очистить» служит для очистки элементов и подготовки полей для заполнения.
В случае если введены не все исходные данные, то программа выдаст сообщение об этом (Рис. 6.2).
Рис. 6.2. Сообщение об ошибке ввода данных
Если же все данные введены верно, то программа выдаст сообщение о том, что найден оптимальный план, либо сообщение о том, что задача не имеет решения (Рис. 6.3).
Рис. 6.3. Сообщения о результате работы программы
После этого кнопка «Сформировать отчет на форме становится активна». При ее нажатии появляется форма с отчетом (Рис. 6.4).
Отчет на данной форме можно распечатать при нажатии на кнопку «Печать». При нажатии на кнопку «Закрыть» форма закроется.
Модуль eTest может быть запущен независимо от модуля Symplex, а может быть вызван из модуля Symplex через меню Опции / Пройти тестирование (Рис. 6.5).
После запуска модуля eTest, пользователь увидит главное окно программы (Рис. 6.6).
Рис. 6.6. Головная форма программы eTest
Система тестового контроля работает на основе базы данных UsDB. Она сформирована при помощи программы Microsoft Access и содержит 4 таблицы:
· Таблица учетных записей пользователей;
· Таблица результатов тестирования пользователей;
Чтобы пройти тестирование, пользователь должен быть зарегистрирован в базе данных. Для регистрации нужно нажать соответствующую кнопку на главной форме. В этом случае откроется окно регистрации, где необходимо заполнить все поля (Рис. 6.7).
Логин и пароль являются идентификаторами для входа. Каждый логин в базе должен быть уникальным.
После заполнения всех полей, необходимо нажать на кнопку «Зарегистрироваться». Программа проверит все ли данные введены, совпадают ли введенные пароли и не зарегистрирован ли пользователь с таким логином ранее. С случае обнаружения этих ситуаций, программа выдаст соответствующие сообщения (Рис. 6.8).
Рис. 6.8. Возможные сообщения об ошибках при регистрации
В случае успешной авторизации, программа выдаст сообщение следующего вида. (Рис. 6.9)
Рис. 6.9. Сообщение об успешной регистрации
Программа прописывает в базу данных новую запись.
После регистрации пользователю нужно авторизоваться. Нужно вызвать форму авторизации и ввести в нее логин и пароль, указанные при регистрации (Рис.6.10).
При успешной авторизации, программа выдаст сообщение следующего вида. (Рис. 6.11)
Рис. 6.11. Сообщение об успешной авторизации
Каждому пользователю при регистрации присваивается статус «Student». Этот статус предоставляет право только проходить тестирование.
Если пользователю присвоен статус Admin, то у него есть право доступа к системе управления базой данных.
После регистрации пользователь может пройти тестирование, нажав на соответствующую кнопку. Перед ни откроется форма, на которой производится тестирование. При нажатии кнопки «Начать» начинает процесс тестирования: на форму загружаются вопросы и варианты ответов. Необходимо выбрать какой-то вариант ответа и нажать кнопку «Продолжить», загрузится другой вопрос. Вопросы в системе могут быть двух типов: вопросы, основанные на выборе ответа и вопросы, основанные на вводе ответа (Рис. 6.12, 6.13).
Рис. 6.12. Форма тестирования, вопрос второго типа
Рис. 6.13. Форма тестирования, вопрос первого типа
Если пользователю присвоен статус «Admin», то он имеет доступ к панели управления. Для перехода к ней, он должен быть авторизован и должен перейти по пунктам главного меню Управление / Панель управления (Рис. 6.14).
В данной форме можно производить управление всеми таблицами базы данных, можно выводить и формировать отчеты за даты и периоды времени.
Так же из этой формы есть кнопки вызова всех остальных основных форм. Это удобно, среди которых есть кнопка конструктора вопросов.
Конструктор вопросов позволяет вводить вопросы двух видов, для переключения между режимами ввода используются переключатели в области объединения «Тип вопроса». По умолчанию представлена форма ввода вопросов с выбором вариантов ответа. Форма ввода вопросов, подразумевающих ввод ответа выглядит следующим образом:
Для ввода вопросов с выбором ответа нужно ввести текст вопроса, выставить количество вариантов ответа, заполнить поля и выбрать верный ответ. После чего нажать кнопку «Сохранить вопрос в базу» (Рис. 6.15).
Рис. 6.15. Форма конструктора вопросов первого типа
Для ввода вопросов с вводом ответа необходимо загрузить сопроводительное изображение, если оно необходимо, ввести текст вопроса и ввести правильный ответ, после чего нажать кнопку «Сохранить вопрос в базу» (Рис. 6.16).
Рис. 6.16. Форма конструктора вопросов второго типа
По завершению тестирования, пользователю будет выдано сообщение о результате (Рис. 6.17)
Рис. 6.17 Сообщение результата тестирования
Создастся файл отчета, а результат запишется в базу.
· Поскольку задача решается обычным симплекс -методом, то в ячейке соответствующей столбцу «План» записывается 0;
· Ячейки, соответствующие столбцам X1- X5, заполняются в соответствие с целевой функцией, но с противоположным знаком.
После заполнения ячеек исходной Симплекс - таблицы начинается процесс вычисления.
Необходимо найти максимальный по модулю отрицательный элемент. Если таковых нет, то считается, что задача приведена к оптимальному плану. В нашем случае таким элементом является элемент -3, находящийся в нижней строке столбца X2. Переменная, соответствующая этому столбцу будет вводимой. Затем происходит поиск выводимой переменной. Для этого нужно найти минимальное отношение элементов столбца «План» и соответствующих им положительных элементов столбца, соответствующего вводимой переменной. Если в столбце нет положительных элементов, то задача не имеет решения. Та строка, на которой находится наименьшее отношение, является выводимой, а элемент на пересечении выводимого вводимого столбца и выводимой строки называется направляющий. В данном случае из базиса выводиться будет переменная X4, а вводиться - X2.
Для вывода и ввода переменных используется следующий алгоритм:
Все элементы выводимой строки делятся на направляющий элемент, затем от каждого остального элемента отнимается соответствующее значение направляющего столбца, умноженное на соответствующий элемент новой введенной строки.
В результате этих операций, получим следующую Симплекс - таблицу:
Опорный план можно улучшить, так как в нижней строке присутствуют отрицательные элементы. Алгоритм, описанный выше снова повторяется, в результате чего получаем новую Симплекс - таблицу.
Данный опорный план является оптимальным, так как в нижней строке нет отрицательных элементов.
Решим эту же задачу в программе. Результат работы программы представлен на рисунке.
Сравнивая результат работы программы, представленный в приложении 2 и результат ручного счета можно сделать вывод, что программа работает правильно, так как результаты, как промежуточные, так и итоговые совпадают.
Вводный инструктаж по требованиям безопасности проводит инженер по технике безопасности предприятия с каждым работником -- после поступления на предприятие; со слушателями, прибывшими на стажировку (практику) -- перед ее началом. О проведении вводного инструктажа по требованиям безопасности делается запись в Журнале учета проведения инструктажа с обязательной подписью инструктируемого и инструктирующего. Проведение целевых инструктажей по сопровождению грузов фиксируется в Журнале учета инструктажей с обязательной росписью инструктируемого и инструктирующего в соответствующем журнале.
Первичный инструктаж по требованиям безопасности проводится индивидуально с каждым, вновь поступившим на работу, с практическим показом безопасных приемов и способов выполнения должностных обязанностей. Проведение первичного инструктажа по требованиям безопасности возможно как с отдельным работником, так и с группами вновь поступивших работников, если им предстоит выполнять одинаковые задачи. О проведении первичного инструктажа по требованиям безопасности на месте исполнения должностных обязанностей делается запись в Журнале учета инструктажа по требованиям безопасности с обязательной подписью инструктируемого и инструктирующего.
Повторный инструктаж по требованиям безопасности проводится по программе первичного инструктажа по требованиям безопасности на рабочем месте со всеми категориями рабочих. Повторный инструктаж по требованиям безопасности проводится индивидуально или с группой специалистов, обслуживающих однотипную технику по программе первичного инструктажа по требованиям безопасности на месте исполнения обязанностей в полном объеме перед началом периода обучения. Целью повторного инструктажа является повышение уровня знаний по вопросам обеспечения безопасности. С лицами, которые по каким-либо причинам отсутствовали при проведении повторного инструктажа, он проводится в день выхода на работу перед началом выполнения обязанностей.
Внеплановый инструктаж по требованиям безопасности проводится при введении новых инструкций по требованиям безопасности, замене оборудования, изменении технологии выполнения операций; при поступлении обзоров о происшествиях, выявлении нарушений требований безопасности, которые могут привести (привели) к травмам, авариям, пожарам, отравлениям
Разработка электронного учебного методического комплекса по изучению раздела "Симплексный метод решения задачи линейного программирования" дисциплины "Математические методы" дипломная работа. Программирование, компьютеры и кибернетика.
Реферат по теме Метод сценарного моделирования
Лабораторные Работы По Картам
Реферат по теме Банкротство физических лиц
Реферат: Методы синтеза ScF3, HfF4 и SnF2. Скачать бесплатно и без регистрации
Курсовая Работа По Базам Данных
Реферат по теме Функциональная архитектура зрительной коры
Скачать Курсовую Работу Бесплатно
Контрольная Работа На Тему Міжнародні Розрахунки У Зовнішньоекономічній Діяльності
Лабораторную Работу Внутреннее Строение Ветки Дерева
Код Специальности Диссертации
Реферат по теме Социология Эмиля Дюркгейма
Контрольная работа по теме Психосоматическая проблема сахарного диабета
Реферат по теме О петриковской росписи
Курсовая работа по теме Сегментация туристского рынка
Реферат: Толкование норм права 8
Пао Ростелеком Практика Отчет
Культура Европы Xix Реферат
Контрольная Работа На Тему Решения Неоднородных Дифференциальных Уравнений 2-Го Порядка С Постоянными Коэффициентами. Комплексные Числа
Реферат На Тему Подземный Мир Крыма
Учебное пособие: Методические указания разработали: профессор, д э. н. Синяева И. М. доцент, к э. н. Поляков В. А. доцент, к э. н. Шеховцова М. М
Товароведческий анализ лекарственных средств на основе чаги - Медицина курсовая работа
Бухгалтерский учет продаж, отражение доходов и расходов по обычным видам деятельности в бухгалтерской отчетности - Бухгалтерский учет и аудит курсовая работа
Организация работ по оценке качества товара - Маркетинг, реклама и торговля курсовая работа


Report Page