Файл: Лабораторная работа №12.docx

ВУЗ: Не указан

Категория: Методичка

Дисциплина: Программирование

Добавлен: 21.10.2018

Просмотров: 2324

Скачиваний: 29

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

Процесс имитации может быть остановлен пользователем программы для просмотра параметров объектов:

  • Состояние каждого поезда, в т.ч.: типы вагонов, их состояние, количество пассажиров по вагонам и всего.

  • Количество пассажиров, требующих дополнительное оборудование вагонов по станциям и всего.

  • Загруженность вагонов с разбивкой по их типам.

  • Загруженность маршрутов.

  • Выручка с разбивкой по поездам, станциям и типам вагонов.

  • Количество пассажиров, не сумевших купить билеты с указанием причин, по которым им отказано в продаже.

      1. Пчелы

Разработать программу, имитирующую жизнь пчелиной семьи. Пчелиная семья состоит из матки (пчелы, производящей женские яйцеклетки), трутней (производящих мужские яйцеклетки), личинок и рабочих пчел. Рабочие пчелы выполняют два типа работ – добычу меда и уборку улья от трупов мертвых пчел. Матка регулярно производит засев, который оплодотворяется трутнями. Один трутень может оплодотворить некоторое количество яйцеклеток. Личинки появляются на свет через некоторый промежуток времени. После появления личинка некоторое время набирает вес, потребляя мед, затем превращается с какой-то вероятности либо в рабочую пчелу, либо в трутня. Каждая из пчел описывается индивидуальным номером, весом и возрастом. Каждая из пчел регулярно потребляет в пищу из общего хранилища запас меда, пропорциональный ее весу. Длительность жизни пчелы не превосходит некоторой максимальной величины. Умереть раньше этого срока пчела может от голода. Продуктивность матки зависит от количества общего запаса меда в улье. Продуктивность трутней колеблется случайным образом вокруг некоторой средней величины также в зависимости от общего запаса меда. При уборке пчела способна вымести очередной труп, если его масса меньше массы выметающей пчелы. В противном случае пчела ждет другую рабочую пчелу. Производительность матки падает с ростом количества мертвых, не выметенных пчел.

Процесс имитации может быть остановлен пользователем программы для просмотра параметров объектов:

  • Количество личинок, трутней, рабочих пчел обоих видов.

  • Сколько меда потребляют рабочие пчелы в сравнении с тем, сколько они его приносят.

  • Какова эффективность трутней – проанализировать – избыточно или недостаточно количество трутней.

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

  • Количество простаивающих выметающих рабочих пчел.

  • Количество мертвых, не выметенных пчел.

      1. Почта

Разработать программу, имитирующую работу междугородней почтовой системы в пределах города. Почтовая система города состоит из головного почтамта и сети почтовых отделений, обслуживающих определенные районы города. Каждое почтовое отделение имеет список адресов, находящихся на ее территории. В обязанности отделений входит сбор входящей почты из ящиков, расположенных на подчиненной им территории, и доставка почтовых отправлений в персональные ящики жильцов домов, расположенных на этой территории. Если отправление адресовано абоненту за пределами обслуживаемой территории, но в пределах города, то отделение пересылает его отделению, обслуживающему указанный район. Если отправление адресовано абоненту за пределами города, то оно пересылается на городской главпочтамт. Однако некоторые почтовые отделения имеют возможность пересылать отправления в некоторые почтовые отделения других городов напрямую. Все отправления с неправильными адресами накапливаются в специальном отделении на главпочтамте и затем возвращаются отправителю. Если и адрес отправителя неправилен, то такое отправление окончательно остается в специальном отделении на главпочтамте. Главпочтамт принимает почту, приходящую из-за пределов города и перераспределяет ее по нужным отделениям. Перераспределение почты между отделениями и главпочтамтом происходит два раза в день. Отправления из-за пределов города поступают на главпочтамт раз день с задержкой по времени, требуемой на междугороднюю доставку. Поступление почты от внутригородских отправителей происходит случайным образом.


Процесс имитации может быть остановлен пользователем программы для просмотра параметров объектов:

  • Количество входящих и исходящих отправлений по каждому почтовому отделению, городу и в целом.

  • Среднее время доставки междугороднего отправления без прямых связей в сравнении с временем доставки между почтовыми отделениями напрямую.

  • Процент отправлений с неправильным адресом получателя

  • Список отправлений, окончательно помещенных в специальном отделении на главпочтамтах.

  • Поиск всех отправлений для заданного адреса.

  • Поиск всех почтовых отделений, имеющих возможность работы напрямую с заданным почтовым отделением.

      1. Транспортное агентство

Разработайте программу, имитирующую работу трансагентства. Трансагентство имеет сеть филиалов в нескольких городах. Транспортировка грузов осуществляется между этими городами тремя видами транспорта: автомобильным, железнодорожным и воздушным. Любой вид транспортировки имеет стоимость единицы веса на единицу пути и скорость доставки. Воздушный транспорт можно использовать только между крупными городами, этот вид самый скоростной и самый дорогой. Кроме того, воздушный транспорт зависит от погоды. Доставить груз воздушным путем можно только при условии хорошей погоды одновременно в городах отправки и назначения. Хорошая или плохая погода задается случайным образом. Железнодорожный транспорт можно использовать между крупными и средними городами, этот вид самый дешевый. Автомобильный транспорт можно использовать между любыми городами. Заказчики через случайные промежутки времени обращаются в один из филиалов трансагентства с заказом на перевозку определенной массы груза и возможным пожеланием о скорости/цене доставки. Трансагентство организует отправку грузов одним из видов транспорта с учетом пожеланий клиента. Оплату трансагенство получает только после успешной доставки груза. Между некоторыми городами для железнодорожного и/или автомобильного транспорта имеются скоростные магистрали, на которых скорость соответствующего вида транспорта увеличивается с заданным коэффициентом. При перевозке грузов могут происходить аварии, при этом вероятность аварии на автотранспорте больше, чем на железнодорожном транспорте, а авиатранспорт имеет аварийность очень низкую. На скоростных магистралях вероятность аварии меньше, чем на обычных дорогах. При аварии трансагентство возвращает заказчику двойную стоимость перевозки.

Процесс имитации может быть остановлен пользователем программы для просмотра параметров объектов:

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

  • Среднее время доставки груза, в том числе с разбивкой по видам транспорта и городам.

  • Потери, связанные с плохой погодой.

  • Потери, связанные с аварийностью, в том числе с разбивкой по видам транспорта и по видам дорог.

  • Доход на тонно-километр скоростных магистралей в сравнении с таким же доход на обычных дорогах.

  • Список исполняемых заказов с возможность сортировки по городам, видам транспорта, стоимости перевозки.

  • Список задерживаемых заказов в связи с плохой погодой.


      1. Автострада

Имеется однорядный участок автострады без перекрестков. Автомобили появляются на одном конце дороги, проезжают и бесследно исчезают на другом конце. Машины стремятся двигаться с постоянными скоростями (разными для разных машин). Имеются разные типы автомобилей (разной длины, с разными интервалами типичной скорости). Автомобили можно разделить на легковые и грузовые. Легковые машины имеют повышенную начальную скорость и ограничение на максимальную длину автомобиля. Кроме того, некоторые легковые автомобили являются такси. Такси делают случайные кратковременные остановки (сажают или высаживают клиентов). Грузовые автомобили имеют пониженную начальную скорость и ограничение на минимальную длину автомобиля. Некоторые грузовые автомобили являются рейсовыми автобусами. Они делают регулярные остановки на заранее выделенных участках дорог. Кроме того, часть автомобилей (и легковые, и грузовые) являются автомобилями повышенной проходимости. Такие автомобили при остановке впереди идущего автомобиля могут съехать на обочину и на пониженной скорости (5 км/час) стараться объехать пробку, при первой же возможности пытаясь вернуться на автостраду. При сближении автомобилей на расстояние менее трех длин заднего автомобиля на каждые 15 км/час переднего автомобиля, задний автомобиль начинает тормозить, уменьшая скорость на 1 км/час каждую секунду до тех пор, пока скорости не сравняются. Если передний автомобиль тормозит, то задний снижает скорость на 15 км/час каждую секунду. Если расстояние между автомобилями превышает 10 длин заднего автомобиля, задний автомобиль увеличивает свою скорость на 5 км/час каждую секунду до тех пор, пока его скорость не сравняется с первоначальной скоростью. Программа должна имитировать заполнение автострады машинами разного типа и позволять изучать создание пробок и аварий при различной загрузке автострады. Автомобили запускаются со случайной первоначальной скоростью из допустимого интервала.

Процесс имитации может быть остановлен пользователем программы для просмотра параметров объектов:

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

  • Количество аварий и пробок.

  • Количество всех, легковых, грузовых автомобилей, автобусов, автомобилей повышенной проходимости.

  • Список всех автомобилей на трассе с выводом их состояния и возможности сортировки по скорости, пройденному расстоянию, типу автомобиля.

      1. Жилищно-эксплуатационное управление

В ЖЭУ имеется несколько ремонтных бригад и несколько транспортных средств. Каждая бригада умеет выполнять ряд базовых ремонтных услуг. Некоторые бригады умеют выполнять специализированный ремонт (электрики, сантехники, штукатуры-маляры). Транспортное средство передвигается с заданной скоростью и на его восстановление в случае неисправности требуется некоторое время. Каждая бригада может иметь транспортное средство и в этом случае передвигается со скоростью этого транспортного средства, иначе – с минимальной скоростью (пешехода). Транспортное средство случайно может сломаться. В этом случае транспортное средство отправляется на восстановление, а бригаде при наличии свободных транспортных средств выдается новое. Если же свободных транспортных средств нет, бригада передвигается пешим порядком. Каждая бригада затрачивает на ремонт некоторое время. Некоторые виды ремонта требуют специального инструмента независимо от назначения ремонта. Бригада может выполнять такой ремонт только при умении пользоваться специальным инструментом и наличии транспортного средства. Имеются дома с заданным расстоянием от ЖЭУ. В каждом доме имеется некоторое количество квартир. Каждая квартира имеет срок службы оборудования различного типа и процент его износа. Каждое оборудование требует ремонта соответствующего назначения (базовый, электрический, сантехнический, строительный) и возможно, соответствующего специального инструмента. Как только в квартире процент износа оборудования становится 100-процентным - вызывается соответствующая бригада (если есть таковая свободная). Бригада затрачивает время на перемещение до дома и обратно и на ремонт. После ремонта износ считается нулевым. Написать программу для имитации работы ремонтных бригад с возможностью задания разного количества бригад, транспортных средств, специального инструмента, домов и оборудования.


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

  • Среднее время, затрачиваемое на ремонт одного оборудования, в т.ч. с разбивкой по назначению оборудования.

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

  • Список всех бригад с указанием из состояния с возможностью сортировки по наличию транспортного средства, назначения бригады, состоянию (ожидает, едет на ремонт, ремонтирует, возвращается с ремонта).

  • Список оборудования с процентом износа больше заданного с возможностью сортировки по удаленности от ЖЭУ, назначению.

      1. Ломбард

Разработайте программу, имитирующую работу ломбарда. Имеются люди, которые сдают вещи в залог. Каждый человек имеет имя и паспорт. Паспорт человека содержит номер и домашний адрес. Некоторые люди проходят государственную службу, и у них вместо паспорта имеется удостоверение личности, в котором есть только номер. Каждая вещь имеет наименование и оценку. Вещи принимаются только следующих типов – золото, меха, бытовая техника. Оценка за золотые вещи определяется исходя из веса и пробы. Оценка за бытовую технику определяется, исходя из времени эксплуатации техники и типичной стоимости нового аналога этой техники. Оценка за меха определяется исходя из веса, ценности меха и степени износа. На каждую вещь выдается ссуда в размере 50% от стоимости оценки. За один залог человек может сдать несколько вещей различного типа. За залог взимается процентная ставка в день от суммы ссуды. В случае продления залога, ломбард получает только процентную ставку и создает новый залог на тех же условиях, что и первоначальный. Возможен досрочный выкуп залога. За каждый просроченный день взимается штраф – заданная процентная ставка от суммы оценки. В случае просрочки плановой даты возврата на 30 дней – вещи залога продаются и ломбард получает сумму оценки через 90 дней после плановой даты возврата.

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

  • Сумма дохода и расхода за каждый день.

  • Планируемый дневной доход в начале текущего дня.

  • Полное состояние любого залога.

  • Список просроченных залогов с возможностью сортировки по продолжительности просрочки, имени человека, сумме залога.

  • Список людей, которые задерживали выплату залога более заданного количества раз.

  • Распределение доходов по типам вещей.

  • Список проданных вещей с возможностью сортировки по наименованию и типу вещи.

      1. Государственное унитарное предприятие

Написать программу для имитации работы государственного унитарного предприятия (ГУП). Работа ГУП заключается в получении бюджетного финансирования, заключении договоров с хозяйством, поставке по эти договорам бюджетных ресурсов (денег) хозяйству и получении от него готовой продукции. Готовая продукция имеет наименование. Будем полагать, что хозяйства поставляют всего два вида продукции – пшеницу и сыр. Сыр имеет дополнительные параметры – сорт (алтайский, радонежский, голландский и т.д.) и жирность – 30%, 40%, 50%. Пшеница имеет параметр твердости – твердая или мягкая. Кроме того, сыр может иметь упаковку (пленка или парафин), а пшеница может классифицироваться по классности – 3 класс, 4 класс, нестандартная. Договор заключается на каждый год. В нем указываются планируемое количество выдаваемых денег и получаемой продукции. На реальные поставки выписываются документы, в которых указываются – дата, поставщик, получатель, список продукции (ресурсов). Для каждого пункта этого списка дополнительно указывается количество. Программа должна загружать файл с состоянием договоров и реальных поставок с жесткого диска и в паузе или по окончании процесса имитации сохранять файл на диск.


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

  • Количество ресурсов и продукции по договорным обязательствам – за все годы и в выбранном году. Список продукции может быть детальным или укрупненным (пшеница, сыр). Список продукции может быть отсортирован по наименованию или количеству.

  • Количество ресурсов и продукции по реальным поставкам – за все годы и в выбранном году. Список продукции может быть детальным или укрупненным (пшеница, сыр). Список продукции может быть отсортирован по наименованию или количеству.

  • Отклонение количества поставляемых ресурсов и продукции от договорных обязательств – за все годы и в выбранном году. Список продукции может быть детальным или укрупненным (пшеница, сыр). Список продукции может быть отсортирован по наименованию или количеству.

  • Количество сыра заданной жирности и возможно заданной упаковкой с разбивкой по сортам и суммарно.

  • Поиск всех реальных поставок, в которых имеется заданная продукция.

  • Поиск всех реальных поставок, в которых отсутствует заданная продукция.

      1. Справочник работника зоопарка

Разработайте программу для ведения справочника обезьян зоопарка, полностью помещающегося в оперативной памяти. Каждое животное имеет кличку, рост и вес. Любое животное классифицируется по семейству и роду. Всего есть три семейства обезьян: широконосые (игрунки, ревуны), узконосые (мартышки, макаки), человекообразные (гориллы, орангутаны, шимпанзе). Узконосые обезьяны любят купаться. Человекообразным обезьянам нужно много место в вольерах. Кроме того, некоторые виды обезьян не имеют хвоста. Некоторые животные обладают повышенной драчливостью. Имеются также вольеры, в которых живут животные. Каждый вольер имеет объем и признак наличия бассейна. Программа должна загружать справочник с жесткого диска, править все его данные, сохранять на диск. Правка данных заключается в приеме из других зоопарков новых обезьян, отсылке обезьян, перемещению обезьян по вольерам. В процессе работы пользователь программы должен иметь возможность просмотра, как минимум, следующих параметров:

  • Список всех обезьян с возможность сортировки по кличке, росту, весу, роду, наличию хвоста, уровню драчливости, номеру вольера.

  • Список всех вольеров с возможности сортировки по объему, наличию бассейна, общему количеству обезьян, количеству драчливых обезьян.

  • Список узконосых обезьян, которые живут в вольерах без бассейна.

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


      1. Добыча природного топлива

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