Министерство образования и науки российской федерации московский государственный институт электроники и математики (технический университет) icon

Министерство образования и науки российской федерации московский государственный институт электроники и математики (технический университет)



НазваниеМинистерство образования и науки российской федерации московский государственный институт электроники и математики (технический университет)
Дата конвертации01.04.2013
Размер39.91 Kb.
ТипДокументы
скачать >>>

МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ

МОСКОВСКИЙ ГОСУДАРСТВЕННЫЙ ИНСТИТУТ

ЭЛЕКТРОНИКИ И МАТЕМАТИКИ

(ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ)


«Программа движения лифтов в жилом доме»

Лабораторная работа.


Преподаватель:

                            Алешкин Е.Ф.

Выполнили студенты

группы с-24:

Глаголев В. ?юпс.

Никитин С.Ю.


г. Москва

2007 год.

Введение. 3

Алгоритмы программы, описание реализации программы. 3

Общий алгоритм программы. 4

Схема алгоритма 4

Описание алгоритма 4

Алгоритм, осуществляющий добавление этажей, в очередь нужному лифту. 5

Схема алгоритма 5

Описание алгоритма 5

Алгоритм функции добавления этажей. 6

Схема алгоритма 6

Описание алгоритма 6

Алгоритм функции движения лифтов. 7

Схема алгоритма 7

Описание алгоритма 7

Алгоритм функции удаления этажей. 8

Схема алгоритма 8

Описание алгоритма 8



Введение.


Целью работы являлось - написать программу, управляющую лифтами в жилом доме.

В ходе работы необходимо было разработать алгоритм, который позволял бы эффективно управлять двумя и более лифтами. Затем реализовать его на языке С++.

Алгоритмы программы, описание реализации программы.


Количество лифтов в доме указывается перед компиляцией программы, в директиве #define NLIFT.

Лифты едут «пошагово» - при каждом нажатии клавиши Enter, программа делает один «шаг».

Для удобства (а именно, добавление более одного этажа, за каждый «шаг»), в программе используется блоки case, где при нажатии клавиш 1-9, мы получаем номер этажа, на который должен приехать лифт. В следствии чего, получилось несколько ограниченным количество этажей в доме.

Каждый лифт имеет свою базу данных (методы класса). Где отражаются следующие характеристики:

  1. Этаж, на котором находиться лифт в данный момент опроса.

  2. Сведения о движение лифта (вверх, вниз или покоиться (покоиться в случае пустой очереди)).

  3. Очередь этажей – тот список этажей лифта, по которому он совершает свое движение. Он равен HFLOOR-1, где HFLOOR - количество этажей в доме (а именно – 9, из-за блоков case).

Общий алгоритм программы.

Схема алгоритма



Описание алгоритма


Что бы выйти из программы, необходимо нажать ‘0’.

Далее, пользователь вводит необходимые этажи.

Для перехода на следующий «шаг», пользователь должен нажать Enter.

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

Алгоритм, осуществляющий добавление этажей, в очередь нужному лифту.

Схема алгоритма




Описание алгоритма


В функцию поступает введенный этаж.

Проверка 1 проверяет, есть ли этот этаж в очередях этажей лифтов. Если есть, то заканчиваем функцию, если нет продолжаем.

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

Проверка 3 позволяет добавлять этажи в очередь пустым лифтам, при этом делается поиск наиболее близкого к этажу пустого лифта. Если ее условия выполняются, вызываем функцию добавления этажей, после ее выполнения конец алгоритма. Если нет, продолжаем.

Вызываем функцию добавления этажей для первого лифта. Конец алгоритма.

Алгоритм функции добавления этажей.

Схема алгоритма




Описание алгоритма


Функция добавления, получив этаж, ищет свободное место в очереди и добавляет туда его.

Если первый этаж из очереди равен нулю, то b = 0 (лифт покоиться).

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

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

Конец функции добавления этажей.

Алгоритм функции движения лифтов.

Схема алгоритма



Описание алгоритма


Функция движения, получает первый этаж из очереди этажей лифта, а так же его местоположение.

Если первый этаж из очереди больше этажа, на котором находился лифт. Лифт едет вверх, что показывается на экране

Если первый этаж из очереди меньше этажа, на котором находиться лифт. Лифт едет вниз, что так же показывается сообщением на экране.

После выполнения вышеописанного, запускается функция удаления этажа, завершение которой, завершает функцию движения.

Алгоритм функции удаления этажей.

Схема алгоритма



Описание алгоритма


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

Если после этого, первый этаж из очереди, равен нулю, то передаем в функцию добавления этажей, значение 0, и завершаем функцию удаления лифтов. Если первый этаж из очереди, не равен нулю, то просто завершаем функция удаления лифтов.




Похожие:

Министерство образования и науки российской федерации московский государственный институт электроники и математики (технический университет) iconМинистерство образования и науки российской федерации московский государственный институт электроники и математики (технический университет)

Министерство образования и науки российской федерации московский государственный институт электроники и математики (технический университет) iconМинистерство образования и науки российской федерации московский государственный институт электроники и математики (технический университет)

Министерство образования и науки российской федерации московский государственный институт электроники и математики (технический университет) iconМинистерство образования и науки российской федерации московский государственный институт электроники и математики (технический университет)

Министерство образования и науки российской федерации московский государственный институт электроники и математики (технический университет) iconМинистерство общего и профессионального образования российской федерации московский государственный институт электроники и математики (Технический университет)

Министерство образования и науки российской федерации московский государственный институт электроники и математики (технический университет) iconМатвеев Василий Михайлович
Государственное образовательное учреждение институт электроники высшего профессионального образования Московский Государственный...
Министерство образования и науки российской федерации московский государственный институт электроники и математики (технический университет) iconПетров Глеб Игоревич
Государственное образовательное учреждение институт электроники высшего профессионального образования Московский Государственный...
Министерство образования и науки российской федерации московский государственный институт электроники и математики (технический университет) iconВасильева Вероника Александровна
Государственное образовательное учреждение институт электроники высшего профессионального образования Московский Государственный...
Министерство образования и науки российской федерации московский государственный институт электроники и математики (технический университет) iconСтепуро Павел Анатольевич
Государственное образовательное учреждение институт электроники высшего профессионального образования Московский Государственный...
Министерство образования и науки российской федерации московский государственный институт электроники и математики (технический университет) iconВальская Полина Владимировна
Государственное образовательное учреждение институт электроники высшего профессионального образования Московский Государственный...
Министерство образования и науки российской федерации московский государственный институт электроники и математики (технический университет) iconУгрозов Антон Валерьевич
Государственное образовательное учреждение институт электроники высшего профессионального образования Московский Государственный...
Разместите кнопку на своём сайте:
Документы


База данных защищена авторским правом ©rushkolnik.ru 2000-2015
При копировании материала обязательно указание активной ссылки открытой для индексации.
обратиться к администрации
Документы