Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Учебное пособие 3000276.doc
Скачиваний:
12
Добавлен:
30.04.2022
Размер:
1.37 Mб
Скачать

Приложение 2 образец титульного листа для выполнения лабораторной работы

Федеральное агентство по образованию

Государственное образовательное учреждение

высшего профессионального образования

Воронежский государственный архитектурно-строительный

университет

Кафедра математического моделирования и вычислительной техники

по дисциплине

Название работы:_____________________________________ ______________________________________________

Вариант №_____

Выполнил:

Проверил:

Воронеж

200 г.

Приложение 3 варианты построения объектных кодов имитационных моделей

  1. Вариант объектного кода модели для выполнения лабораторной работы № 1

Текст модели

#include <pilgrim.h>

Int Forw; /* Номер следующего узла */

Int Dist; /* Закон распределения времени обслуживания */

float Tobs; /* Среднее время обслуживания */

float Pogr; /* Среднеквадратическое отклонение */

/* Время измеряется в часах */

forward

{

modbeg(“Компьютер”, 6, 1200.0, (long)time(NULL), none, 1, none, 3, 2);

ag(“Бухгалтерия”, 5, none, expo, 0.1, 0.1/3, zero, 1);

ag(“Неисправности”, 6, 1, expo, 24.0, zero, zero, 1);

network(dummy, dummy)

{

top(1): queue(“Столик-очередь”, prty, 2);

place;

top(2): if (t->pr == 1) /* Неполадка */

{

Forw=4;

Dist=unif;

Tobs=1.0;

Pogr=0.5;

}

else /* Документ */

{

Forw=3;

Dist=norm;

Tobs=0.08;

Pogr=0.08/3;

}

serv(“АРМ бухгалтерии”, 1, abs, norm, Tobs, Pogr, zero, Forw);

place;

top(3): term(“Архивные папки”);

place;

top(4): term(“Неиспр. устр-на”);

place;

fault(123);

}

modend(“pilgrim.rep”, 1, 12, page);

return 0;

}

  1. Вариант объектного кода модели для выполнения лабораторной работы № 2

Текст модели

#include <pilgrim.h>

float Pas=1.0; /* интервал прихода пассажиров */

float Tax=10.0; /* интервал прихода такси */

float Mod_time=360.0;

forward

{

modbeg(“Маршр. такси”, 5, Mod_time, (long)time(NULL),

none,2, none, 5, 2);

ag(“Пассажиры”, 1, none, expo, Pas, zero, zero, 2);

ag(“Такси”, 6, none, norm, Tax, Tax/3, zero, 2);

network(dummy, dummy)

{

top(2): queue(“Пассажиры”, none, 3);

clcode

if (addr[2]->na == 1)

hold(3); /* начальное размыкание ключа */

place;

top(3): key(“Есть такси?”, 4);

place;

top(4): delet(“Посадка в такси”, 0, 10, 5);

rels(3);

hold(8);

place;

top(5): term(“Такси уехало”);

hold(3);

rels(8);

place;

top(7): queue(“Такси”, none, 4);

place;

top(8): key(“Остановка свободна?”, 4);

place;

fault(123);

}

modend(“pilgrim.rep”, 1, 12, page);

return 0;

}