МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ
Федеральное государственное бюджетное образовательное учреждение
высшего профессионального образования
«Оренбургский государственный университет»
КОЛЛЕДЖ ЭЛЕКТРОНИКИ И БИЗНЕСА
Предметно-цикловая комиссия физико-математических дисциплин
КУРСОВОЙ ПРОЕКТ
по дисциплине: «Математические методы»
Построение сетевой модели предприятия
КОГУ 230105.4014.25П
Руководитель
______
«___»_______ 2014 г.
Исполнитель
Студентка группы 59П-4
______
«___»________ 2014 г.
Нормоконтроль
_______
«___»________ 2014 г.
Оренбург 2014
МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ
Федеральное государственное бюджетное образовательное учреждение
высшего профессионального образования
«Оренбургский государственный университет»
КОЛЛЕДЖ ЭЛЕКТРОНИКИ И БИЗНЕСА
Предметно-цикловая комиссия физико-математических дисциплин
Задание на курсовой проект
по дисциплине: «Математические методы»
Построение сетевой модели предприятия
Исходные данные: количество вершин
Дата выдачи задания «6» ноября 2013 г.
Руководитель _________________ Атяскина Т.В.
Исполнитель
студентка группы 59П-4___________ Семёнова Ю.В.
Срок защиты работы «___»____________ 2014 г.
Содержание
Введение 5
1 Постановка задачи 6
1.1 Требования к системе и её структуре 6
1.2 Требования к функциям, выполняемым системой 7
1.3 Требования к программно - аппаратному обеспечению 7
1.4 Требования к техническому обеспечению 8
1.5 Требования к эргономике и технической эстетике 8
1.6 Требования к надежности и хранению информации 9
2 Основная часть 11
2.1 Математическая модель 11
2.2 Метод решения задачи 12
2.3 Структурная схема программы 15
2.4 Схема взаимодействия модулей 15
3 Руководство программисту 17
4 Руководство пользователю 18
4.1 Общие сведения 18
4.2 Работа с помощью 19
4.3 Наиболее вероятные ошибки 21
Заключение 22
Список использованных источников 23
Приложение А – Текст программы 24
Приложение Б – Формы программы 28
Приложение В – Диск с программой 30
Аннотация
Курсовой проект на тему «Построение сетевой модели предприятия» содержит введение, четыре главы, заключение и приложения, которые состоят из текста, форм программы и диска с программой.
Программный продукт разработан в среде программирования Borland Delphi 7. Данная программа предназначена для получения практических навыков в разработке программных средств с использованием современных алгоритмических языков программирования и информационных технологий, стандартизации основных этапов жизненного цикла программных средств, стандартизации документирования программных средств, обеспечении надежности и качества функционирования программных средств, использовании методов тестирования программного обеспечения.
Имеется удобный и понятный интерфейс для работы с программой.
Введение
Теория, занимающаяся принятием решения в условиях конфликтных ситуаций, называется теорией игр. Математическая модель конфликтной ситуации представляет собой игру.
Игра – это совокупность правил, описывающих сущность конфликтной ситуации. Эти правила устанавливают:
- выбор образа действия игроков на каждом этапе игры;
- информацию, которой обладает каждый игрок при осуществлении таких выборов;
- плату для каждого игрока после завершения любого этапа игры.
В зависимости от числа конфликтующих сторон игры делятся на парные и множественные.
Стратегией игры называется совокупность правил, определяющих поведение игрока от начала игры до ее завершения. Стратегии каждого игрока определяют результаты или платежи в игре. Игра называется игрой с нулевой суммой, если проигрыш одного игрока равен выигрышу другого, в противном случае она называется игрой с ненулевой суммой.
Игра называется конечной, если у каждого игрока имеется конечное число стратегий.
Результаты конечной парной игры с нулевой суммой можно задавать матрицей, строки и столбцы которой соответствуют различным стратегиям, а ее элементы - выигрышам одной стороны (равные проигрышам другой). Эта матрица называется платежной матрицей или матрицей игры. Цель курсового проекта: разработать программный продукт для нахождения опорного плана перевозок.
Задачи курсового проекта:
- изучить теоретический материал по теме работы;
- изучить методы нахождения опорных планов;
- описать создание программного продукта по теме работы.
1 Постановка задачи
Составить компьютерную сетевую модель. Описать предъявляемые требования к эргономике и технической эстетики для разработанного интерфейса программы. Разработать программный продукт для нахождения опорных планов перевозок товара от поставщика к потребителю.
К основным параметрам функциональных задач в постановке задачи относятся:
1)цель и назначение данной задачи состоит в том, чтобы разработать программный продукт, в котором будут реализованы функции сетевой компьютерной функции;
2)условия решения задачи с использованием средств вычислительной техники:
- процессор: Pentium/Celeron/AMD K5– 2400 MHz;
- монитор SVGA, поддерживающий графический режим 1024*768;
- размер ОЗУ 1024Мб;
- свободное пространство на жестком диске не менее 20 Мб;
- видео карта 512 Мб;
- клавиатура;
- мышь;
3)содержание функций обработки входной информации при решения задачи: по введенным данным будет происходить подсчёт сроков свершения событий, резервов времени;
4)требование к периодичности решения задачи: данный программный продукт будет использоваться по требованию;
5)ограничение по срокам и точностям выходной информации: информация предоставляется сразу после завершения процесса обработки входной информации;
6)состав и форма представления выходной информации: выходные данные выводятся на экран;
7)источники входной информации для решения задачи: данные о вершинах;
8)пользователи задачи: программный продукт рассчитан на конечного пользователя.
1.1 Требования к системе и её структуре
Для нормальной работы разрабатываемой программы необходимо наличие следующего программного обеспечения: операционная система Windows 98, NT, XP, Vista, 7, 8.
1.2 Требования к функциям, выполняемым системой
Разработанный программный продукт «Построение сетевой модели предприятия» должен удовлетворять эргономическим требованиям, требованиям к программно-аппаратному окружению, а также требованиям к надежности и хранению информации. Обладать автоматизированным сбором информации, представлять информацию в более удобном виде.
В программном продукте реализованы следующие функции:
нахождение резервов времени событий;
справка по программе.
1.3 Требования к программно - аппаратному обеспечению
Программное обеспечение должно удовлетворять следующим требованиям:
возможность экономично и целесообразно использовать предоставляемую память;
включать в себя проверку целостности данных.
Для корректной работы с программным продуктом необходимо наличие следующих минимальных конфигураций аппаратного окружения :
операционная система Windows XP, Windows 7 Ultimate;
Delphi 7;
Microsoft Office 2003, 2007.
При выполнении курсового проекта ПК имела следующие характеристики:
процессор Intel Atom N570 CPU 3.2 GHz;
RAM – 3Gb;
HDD – 512Gb;
клавиатура;
мышь;
монитор LG G2225HQ;
операционная система Windows 7.
1.4 Требования к техническому обеспечению
Для работы с программным продуктом необходимо наличие следующих минимальных конфигураций аппаратного окружения:
процессор Intel Atom N570 CPU 3.2 GHz;
RAM – 1Gb;
HDD – 120Gb;
клавиатура;
мышь;
монитор LG G2225HQ.
1.5 Требования к эргономике и технической эстетике
Эргономика представляет собой научную дисциплину, комплексно изучающую человека в конкретных условиях его деятельности. Возникшая на стыке общественных, технических и естественных наук, она является одновременно и проектной, и научной дисциплиной.
Взаимодействие пользователей с прикладным программным обеспечением, входящим в состав системы должно осуществляться посредством визуального графического интерфейса. Интерфейс системы должен быть понятным и удобным, не должен быть перегружен графическими элементами и должен обеспечивать быстрое отображение экранных форм. Навигационные элементы должны быть выполнены в удобной для пользователя форме. Средства редактирования информации должны удовлетворять принятым соглашениям в части использования функциональных клавиш, режимов работы, поиска, использования оконной_ системы. Ввод-вывод данных системы, прием управляющих команд и
отображение результатов их исполнения должны выполняться в интерактивном режиме. Интерфейс должен соответствовать современным. эргономическим требованиям и обеспечивать удобный доступ к основным функциям и операциям системы.
Интерфейс должен быть рассчитан на преимущественное использование манипулятора типа «мышь», то есть управление системой должно осуществляться с помощью набора экранных меню, кнопок, значков и т. п. элементов. Клавиатурный режим ввода должен используется главным образом при заполнении и/или редактировании текстовых и числовых полей экранных форм. Все надписи экранных форм, а также сообщения, выдаваемые пользователю (кроме системных сообщений) должны быть на русском языке.
Система должна обеспечивать корректную обработку аварийных ситуаций, вызванных неверными действиями пользователей, неверным форматом или недопустимыми значениями входных данных. В указанных случаях система должна выдавать пользователю соответствующие сообщения, после чего возвращаться в рабочее состояние, предшествовавшее неверной (недопустимой) команде или некорректному вводу данных.
В разрабатываемом программном продукте предусмотрены следующие элементы эргономики:
- дружественный интерфейс;
система диалога с конечным пользователем.
1.6 Требования к надежности и хранению информации
Надежность – это одно из важнейших свойств программного продукта, обеспечение которого даёт возможность предусмотреть различные ситуации, когда операционная система или пользователь не могут корректно работать с программой. Например, неправильный ввод (текст вместо цифр), не поддерживаемая операционная система и т.д.
Вся система должна обладать надёжностью, необходимо предусмотреть, самые неожиданные действия пользователя и если они неправильны, программа должна объяснить, как сделать то, чего хочет программа от пользователя.
Данный программный продукт характеризуется высокой степенью_ надежности хранения информации. При некорректных действиях
пользователя программа не должна производить аварийное завершение_ работы, потому что это повлечет за собой потерю данных, а_ соответствующим образом обрабатывать эти действия, не прерывая нормальный ход программы.
Помимо этого в программе предусмотрено жесткий контроль вводимой информации, для сокращения случайных ошибок пользователя.
Хранение программного продукта может осуществляться на любом магнитном или оптическом носителе информации. В нашем случае применены компакт диски CD-R/DWD-R и Flash - носители.
Следует признать, что абсолютно надежных программ не существует, так как абсолютная степень надежности не может быть теоретически доказана и, следовательно, недостижима. Описанные модели представляют теоретический подход и, как правило, имеют ограниченное применение.
Типовая структура характеристик и атрибутов качества для оценивания исполняемого программного обеспечения, применяемые метрики, соответствующие виды, испытаний и методы измерений в методике представляются в таблицах.
Регистрация означает протоколирование выявляемых в процессе оценивания событий или проявлений ошибок (недостатков, нарушений требований).
Программная документация, в общем виде, должна удовлетворять следующим требованиям:
соответствие требованиям стандартов единой системы программной документации;
понятность документации;
полнота документации;
возможность освоения программного обеспечения по документации;
возможность освоения программного обеспечения на контрольном примере;
легкость установки и запуска программного обеспечения;
понятность входных и выходных данных;
наличие описания структуры функций программного обеспечения;
соответствие функций программного обеспечения требованиям
техническому заданию;
наличие описания функций программного обеспечения;
отсутствие противоречий в реализации интерфейса с пользователем;
отсутствие противоречий в диагностике системы;
обеспечение помощи пользователю при затруднениях средствами
функции подсказки;
достаточность документации для ввода программного обеспечения в
эксплуатации;
правильность документации;
приемлемость уровня технического исполнения документации;
наличие краткой аннотации программного обеспечения;
наличие описания решаемых задач;
наличие описания ограничении по применению;
наличие описания алгоритмов.
В разрабатываемом программном продукте предусмотрены следующие требования безопасности:
без какой-либо необходимой, но не введенной информации, программа работать не будет;
контроль ввода информации.
2 Основная часть
2.1 Математическая модель
Сетевой моделью называется экономико-математическая модель, отражающая комплекс работ (операций) и событий, связанных с реализацией некоторого проекта (научно-исследовательского, производственного и др.), в их логической и технологической последовательности и связи. Анализ сетевой модели, представленной в графической или табличной (матричной) форме, позволяет, во-первых, более четко выявить взаимосвязи этапов реализации проекта и, во-вторых, определить наиболее оптимальный порядок выполнения этих этапов в целях, например, сокращения сроков выполнения всего комплекса работ. Таким образом, методы сетевого моделирования можно отнести к методам принятия оптимальных решений.
В экономических исследованиях сетевые модели возникают при моделировании экономических систем и процессов методами сетевого планирования и управления (СНУ).
Объектом управления в системах сетевого планирования и управления являются коллективы исполнителей, располагающие определенными ресурсами и выполняющие заданный комплекс операций, который призван обеспечить достижение намеченной цели, например разработку нового изделия, строительство объекта и т.п.
Основой СНУ служит сетевая модель (СМ), в которой моделируется совокупность взаимосвязанных работ и событий, отображающих процесс достижения определенной цели. Она может быть представлена в виде графика или таблицы.
Основными понятиями СМ являются следующие: работа, событие, путь. На рис. 1 графически представлена СМ, состоящая из 5 событий (кружочки) и 6 работ (стрелки); продолжительность выполнения работ в некоторых единицах времени указана над стрелками.
Рисунок 1 – Сетевая модель
Событиями называются результаты выполнения одной или нескольких работ. Они не имеют протяженности во времени. Событие свершается в тот
момент, когда оканчивается последняя из работ, входящая в него. События обозначаются одним числом и при графическом представлении СМ изображаются кружком (или иной геометрической фигурой), внутри которого проставляется его порядковый номер (i = 1, 2,... N). В СМ имеется начальное событие (с номером 1), из которого работы только выходят, и конечное событие (с номером N), в которое работы только входят.
2.2 Метод решения задачи
Пусть для некоторого комплекса работ установлены оценки для каждой работы на уровне нормативных продолжительностей и срочного режима, а также даны стоимости. Информация представлена в таблице 1.
Нормативный режим
Срочный режим
Продолжительность, дни Стоимость, м/р Продолжительность, дни Стоимость, м/р
(1,2) 3 6 2 11
(1,3) 5 8 3 12
(1,4) 4 7 8 9
(2,5) 10 25 8 30
(3,5) 8 20 6 24
(3,6) 15 26 12 30
(4,6) 13 24 10 30
(5,7) 3 15 6 25
(6,7) 4 10 3 15
Таблица 1 – Информация о работе
Построить график данного комплекса работ.
Требуется рассчитать:
• временные характеристики сетевого графика при нормальном режиме работ;
• найти критический путь;
• полные резервы времени;
• временные характеристики сетевого графика при срочном режиме работ;
• найти критический путь;
• полные резервы времени;
• определить стоимость работ.
Решение:
Рассчитаем временные характеристики для нормативного режима.
К временным характеристикам относятся ранние и поздние сроки наступления события. Ранний срок наступления события рассчитывается по формуле:
tp(j) =mac (( t p ( i) +t ( ij )), где
t p ( j) –ранний срок наступления предшествующего I события.
t ( ij )- работа.
Для расчёта t p ( j) для данного комплекса будем считать, что ранний срок наступления 1-го события равно tp(1)=0, тогда для последующих событий будем иметь:
t p(1)= ma х (tp(1)=0)
t p(2)= ma х (tp(1)+ tp(1,2)) =0+3=3
t p(3)= ma х ((tp(1)+ tp(1,3))=0+5=5
t p(4)= ma х (tp(1)+ tp(1,4))=0+4=4
t p(5)= ma х ((tp(4)+ tp(4,5)) =(2+10);(5+9)=14
t p(6)= ma х (tp(4)+ tp(4,6); tp(3)+ tp(3,6))=(4+13):(5+15)=20
t p(7)= ma х (tp(5)+ tp(5,7); tp(6)+ tp(6,7)=(14+8)(20+4)=24.
Очевидно, завершающее 7-е событие может наступить через 24 дня от начала выполнения всего комплекса работ. Поздний срок наступления события определяется по формуле:
tп( i )=min (tп(j)-t(ij))
Для расчёта t п( i) для комплекса будем считать, что самый поздний срок наступления 7-го события равен 24 дня, т.е. раннему сроку наступления 7-го события, тогда будем иметь:
tп(7)=min(24) =24
tп(6)=min(tп(7) - t(5,7)=(24-4)=20
tп(5)=min(24-4)=20
tп(4)=min(20-13)=7
tп(3)=min((16-9);(20-15) =5
tп(2)= min (16-10)=6
tп(1)= min (6-3; 5-5;7-4)=0
Полученный результат говорит о том, что расчёты произведены правильно.
Резервы времени определяем как разность между поздними и ранними сроками по формуле:
Р(i)=tp(j) - t п (i)
Р(1) =0-0=0
Р(2)=6-3=3
Р(3)=5-5=0
Р(4)=7-4=3
Р(5)=16-12=2
Р(6)=20-20=0
Р(7)=24-24=0
Полученные резервы времени показывают на какое время можно задержать
наступление того или иного события, не вызывая опасности срыва выполнения комплекса работ. Те события, которые не имеют резервов времени, находятся на критическом пути.
Критический путь это наиболее продолжительный путь сетевого графика, который ведёт к завершению комплекса работ.
Находим пути и их длительности для данного комплекса работ:
1) 1-2-5-7 его стоимость: 3+10+8=21.
2) 1-3-5-7 его стоимость 5+9+8=22
3) 1-3-6-7. его стоимость: 5+15+4=24
4) 1-4-6-7. его стоимость: 4+13+4=21.
Критический путь: (1,3)-(3,6)-(6,7)
Резервы времени для работ, находящихся на критическом пути равны нулю.
(1,3)=0; (3,6)=0; (6,7)=0,
Рассчитаем временные характеристики сетевого графика при срочном режиме работ. Ранний срок наступления события рассчитывается по формуле:
tp(j) =maх((tp(i) +t(ij)), где
tp(j) –ранний срок наступления предшествующего I события.
t(ij )- работа.
Для расчёта t p ( j) для данного комплекса будем считать, что ранний срок наступления 1-го события равно tp(1)=0, тогда для последующих событий будем иметь:
tp(1)= maх (t p(1)=0
tp(2)= maх (tp(1)+ tp(1,2)) =0+2=2
tp(3)= maх ((tp(1)+ tp(1,3))=0+3=3
tp(4)= maх (tp(1)+ tp(1,4))=0+8=8
tp(5)= maх ((tp(4)+ tp(4,5)) =(2+8);(3+6)=10
tp(6)= maх (tp(2)+ tp(2,5); tp(3)+ t p(4,6))=(3+12):(8+10)=18
tp(7)= maх (tp(5)+ tp(5,7); tp(6)+ t p(6,7)=(15+3);(18+3)=21.
Очевидно, завершающее 7-е событие может наступить через 21 день от начала выполнения всего комплекса работ.
Поздний срок наступления события определяется по формуле:
tп(7)=min(22) =24
tп(6)=min( t п (7)- t(5,7)=(21-3)=18
tп(5)=min(21-6)=15
tп(4)=min(18-10)=8
tп(3)=min((16-6);(19-15) =4
tп(2)= min (15-8)=7
tп(1)= min (15-2; 20-8;8-8)=0
Полученный результат говорит о том, что расчёты произведены правильно.
Резервы времени определяем как разность между поздними и ранними сроками по формуле:
Р(i) =t p( j ) - t п (i)
Р(1) =0-0 =0
Р(2)=7-2=5
Р(3)=8-8=14
Р(4)=8-8 =0
Р(5)=12-8=4
Р(6)=18-18=0
Р(7)=22-22= 0
Найдём все пути: и их длительности.
1) 1-2-5-7 его стоимость: 3+8+6=16.
2) 1-3-5-7 его стоимость 3+6+6=15
3) 1-3-6-7. его стоимость:3+12+3=18
4) 1-4-6-7. его стоимость: 8+10+3=21.
Очевидно, что на критическом пути резервов времени нет.
Критический путь (1-3-6-7). Его длительность равна 21.
2.3 Структурная схема программы
Программный продукт имеет конструкцию построения – состав и взаимосвязь программный модулей. Пример структурной схемы программы представлен на рисунке 2.
Рисунок 2 – Структурная схема программы
2.4 Схема взаимодействия модулей
Программа содержит 3 модуля. Схема взаимодействия модулей программы изображена на рисунке 3.
Рисунок 3 – Структурная схема программы
Программа включает в себя 3 модуля каждые из которых выполняют определенные функции:
Zapusk – загрузка программы
Glav – рабочая среда программы;
Spravka1 – вызов справки.
3 Руководство программисту
Данный программный продукт написан в среде визуального программирования Borland Delphi 7 и был основан на модульном программировании. В программе используются стандартные компоненты Delphi, с помощью которых осуществляется её реализация. Программа включает в себя следующие файлы:
Glav.dpr - содержит общее описание проекта;
Glav.cfg - содержит параметры и настройки компилятора;
Glav.dof - содержит параметры и настройки проекта;
Glav.res - файл ресурсов;
Glav.exe - исполнимый файл;
файлы с расширением *.pas - файлы модулей которые содержат код программы;
файлы с расширением *.dfm - файлы в которых находится описание окон;
файлы с расширением *.dcu - результат преобразования текста модулей в машинные инструкции.
Все вышеперечисленные файлы необходимы для правильной организации программы. Переименование или удаление любого из файлов приведет к сбою в работе программы.
Программы включает в себя 3 модуля каждые из которых выполняют определенные функции:
Zapusk – загрузка программы
Glav – рабочая среда программы;
Spravka1 – вызов справки.
Для начала работы с программой нужно запустить файл Zapusk.exe.
Текст программы представлен в приложении А.
4 Руководство пользователю
4.1 Общие сведения
Данная программа представляет собой компьютерную игру.
Для начала работы с программой необходимо запустить файл Zapusk.exe (рис. 4).
Рисунок 4 – Значок запуска программы
В появившемся после загрузки окне сетевого планирования следует выбрать количество вершин графа (рис. 5).
Рисунок 5 – Поле «Вершин графа»
После этого следует нажать на кнопку «Рассчет» (рис. 6).
Рисунок 6 – Поле «Вычислений»
Работу программы можно посмотреть в приложении Б.
4.2 Работа с помощью
В программном продукте предоставлена справка, в которой написано как работать с программой.
Для вызова справки нужно выбрать на панели инструментов пункт «Справка», которая состоит из трех подпунктов «О программе», «Помощь», «О разработчике».
1) Справка «О программе» изображена на рисунке 7:
Рисунок 7 – Справка «О программе»
2) Справка «Помощь» изображена на рисунке 8:
Рисунок 8 – Справка «Помощь»
3) Справка «О разработчике» изображена на рисунке 9:
Рисунок 9 – Справка «О разработчике»
4.3 Наиболее вероятные ошибки
При работе с программой возможны ошибки, связанные с заполнением графа. На рисунке 10 показана ошибка, которая может возникнуть, если пользователь не ввел входную информацию.
Рисунок 10 – Ошибка «Введите данные!»
Заключение
В курсовом проекте изложен теоретический материал по теме «Построение сетевой модели предприятия», приведен пример решения задач данным методом.
Результатом курсового проекта является программный продукт, выполненный в среде программирования Borland Delphi 7, с использованием дополнительных компонентов, и разработан по всем правилам разработки программного продукта.
Были получены и закреплены знания по дисциплинам «Математические методы» и «Технология разработки программного продукта». Полученные знания и навыки программирования за время выполнения курсового проекта в дальнейшем будут применяться в разработке программ.
Таким образом, цель курсового проекта достигнута, задачи выполнены.
Список использованных источников
1 Гофман В.Э. Delphi: Руководство программиста /В.Э.Гофман - СПб.: БХВ-Петербург, 2005. - 1152 с.
2 Семагин И.Г. Основы программирования /И.Г.Семагин, А.П.Шестаков. - М.: Академия, 2004. - 385 c.
3 Хомоненко А., Гофман В., Мещеряков Е., Никифоров В.,Delphi 7 в подлиннике. – СПб: БХВ-Петербург, 2004. - 1216 c.
4 Учебник.- Под ред. В.Н. Корнякова. – К67 Программирование документов и приложений MS Office в Delphi. – СПб.: БХВ-Петербург, 2005. – 496 с.: ил.
5 Желонкин, А.В. Основы программирования в интегрированной среде Delphi. Практикум / А.В. Желонкин. – М.: БИНОМ, 2004. – 236 с.
6 Чиртик А.А., Борисок В.В., Ковель Ю.И. Delphi. Трюки и эффекты (+D). – СПб.: Питер, 2007. – 400 с.: ил.
7 Фаронов, В.В. Система программирования Delphi: учебник /В.В.Фаронов - СПб.: БХВ-Петербург, 2005. - 912 с.: ил.
8 Уроки создания программ по математическим методам [Электронный ресурс] : статьи, уроки по созданию программы – Режим доступа : http://www.programmersforum.ru/
9 Уроки создания программ по математическим методам [Электронный ресурс] : статьи, уроки по созданию программы – Режим доступа : http://www.cyberforum.ru/
Приложение A
Текст программы
program Zapusk;
uses
Forms,
glav in glav.pas {Form1},
spravka1 in spravka1.pas {Form3};
{$R *.res}
begin
Application.Initialize;
Application.CreateForm(TForm1, Form1);
Application.CreateForm(TForm3, Form3);
Application.Run;
end.
unit glav;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ComCtrls, Buttons, Grids, Menus, MSHTML;
type
TForm1 = class(TForm)
StringGrid1: TStringGrid;
BitBtn1: TBitBtn;
UpDown1: TUpDown;
Edit1: TEdit;
Label1: TLabel;
SpeedButton1: TSpeedButton;
StringGrid3: TStringGrid;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
mm1: TMainMenu;
N1: TMenuItem;
N2: TMenuItem;
procedure BitBtn1Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure SpeedButton1Click(Sender: TObject);
procedure Edit1KeyPress(Sender: TObject; var Key: Char);
procedure N1Click(Sender: TObject);
procedure N2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
i,j,e,b,mx,d,v:integer;
a,c:array[1..10] of integer;
implementation
uses spravka1;
{$R *.dfm}
procedure TForm1.BitBtn1Click(Sender: TObject);
begin
Form1.ClientHeight:=344;
e:=Strtoint(Edit1.Text);
StringGrid1.ColCount:=e+1;
StringGrid1.Width:=21+20*e;
StringGrid1.RowCount:=e+1;
StringGrid1.Height:=20+19*e;
for i:=1 to e do
begin
StringGrid1.Cells[0,i]:=Inttostr(i);
StringGrid1.Cells[i,0]:=Inttostr(i);
end;
for i:=1 to e do
for j:=1 to i do
StringGrid1.Cells[j,i]:=0;
StringGrid3.RowCount:=e+1;
StringGrid3.Height:=20+19*e;
for i:=1 to e do
StringGrid3.Cells[0,i]:=Inttostr(i);
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
Form1.ClientHeight:=87;
StringGrid3.Cells[0,0]:=i;
StringGrid3.Cells[1,0]:=tn(i);
StringGrid3.Cells[2,0]:=tp(i);
StringGrid3.Cells[3,0]:=R(i);
end;
procedure TForm1.SpeedButton1Click(Sender: TObject);
begin
Form1.ClientHeight:=665;
e:=Strtoint(Edit1.Text);
for i:=1 to e do
for j:=1 to e do
if StringGrid1.Cells[i,j]= then StringGrid1.Cells[i,j]:=0;
if StringGrid1.Cells[i,j]= then ShowMessage(Введите данные!)
else
StringGrid3.Cells[1,1]:=0;
for i:=2 to e do
begin {i}
b:=0;
for j:=1 to e do
if StringGrid1.Cells[i,j]<>0 then
begin
b:=b+1;
a[b]:=Strtoint(StringGrid1.Cells[i,j]);
c[b]:=j;
end;
if b=1 then
StringGrid3.Cells[1,i]:=Inttostr(Strtoint(StringGrid3.Cells[1,c[b]])+a[b]);
if b>1 then
begin {if}
for v:=1 to b do
a[v]:=a[v]+Strtoint(StringGrid3.Cells[1,c[v]]);
mx:=a[1];
for d:=1 to b do
if mx<a[d] then mx:=a[d];
StringGrid3.Cells[1,i]:=Inttostr(mx);
end {/if}
end; {/i}
StringGrid3.Cells[2,e]:=StringGrid3.Cells[1,e];
for i:=e-1 downto 1 do
begin {i}
b:=0;
for j:=1 to e do
if StringGrid1.Cells[j,i]<>0 then
begin
b:=b+1;
a[b]:=Strtoint(StringGrid1.Cells[j,i]);
c[b]:=j;
end;
if b=1 then
StringGrid3.Cells[2,i]:=Inttostr(Strtoint(StringGrid3.Cells[2,c[b]])-a[b]);
if b>1 then
begin {if}
for v:=1 to b do
a[v]:=Strtoint(StringGrid3.Cells[2,c[v]])-a[v];
mx:=a[1];
for d:=1 to b do
if mx>a[d] then mx:=a[d];
StringGrid3.Cells[2,i]:=Inttostr(mx);
end {/if}
end ;{/i}
for i:=1 to e do
StringGrid3.Cells[3,i]:=Inttostr(Strtoint(StringGrid3.Cells[2,i])-Strtoint(StringGrid3.Cells[1,i]));
end;
procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
if not (key in [#13])then key :=#0;
end;
procedure TForm1.N1Click(Sender: TObject);
begin
Form3.show;
end;
procedure TForm1.N2Click(Sender: TObject);
begin
Form1.Close;
end;
end.
unit spravka1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, OleCtrls, SHDocVw, ComCtrls;
type
TForm3 = class(TForm)
tv1: TTreeView;
wb1: TWebBrowser;
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form3: TForm3;
implementation
{$R *.dfm}
end.
Приложение Б
Формы программы
1) Главная форма (рис. 11).
Рисунок 11 – Главная форма
2)Справка «О программе» (рис. 12).
Рисунок 12 – Справка «О программе»
3)Справка «Помощь» (рис. 13).
Рисунок 13 – Справка «Помощь»
4)Справка «О разработчике» (рис. 14).
Рисунок 14 – Справка «О разработчике»
Приложение В
Диск с программой
Построение сетевой модели предприятия
Курсовая работа по предмету «Математика»