Теми рефератів
> Реферати > Курсові роботи > Звіти з практики > Курсові проекти > Питання та відповіді > Ессе > Доклади > Учбові матеріали > Контрольні роботи > Методички > Лекції > Твори > Підручники > Статті Контакти
Реферати, твори, дипломи, практика » Курсовые проекты » Клас "Вантажний ліфт"

Реферат Клас "Вантажний ліфт"





/p>

}

} while (buf == false);

init_graph ();

grow (get_h ());

}

В· void work ()

Функція здійснює роботу ліфта в залежності від глобальної налаштування і вхідних даних. Приклад реалізації функції наведено нижче:

void car_lift :: work ()

{

int first;

int last;

int sum = 0;

int i_number;

int j;

bool over_l = false;

grow (get_h ());

do

{

sum = 0;

if (get_wload () == 0)// вантажу в ліфті немає

{

j = 0;

while ((cargo [j]. get_out () == false) && (j

first = cargo [j]. get_first ();

last = cargo [j]. get_last ();

entry (cargo [j]);

}

if (over_l == false)

{

for (int i = 0; i

{

if ((cargo [i]. get_out () == true) && (cargo [i]. get_first () == first))

entry (cargo [i]);

}

}

if (last> first)// рух на підйом

{

if (get_stop () == true)

{

for (int i = 0; i

{

if ((cargo [i]. get_in () == true) && (cargo [i]. get_last ()

(cargo [i]. get_last ()> first))

last = cargo [i]. get_last ();

if ((cargo [i]. get_out () == true) && (cargo [i]. get_first ()

(cargo [i]. get_first ()> first))

last = cargo [i]. get_first ();

}

}

if (get_wload ()> get_weight ())// перевірка на перевантаження

{

overl (first);

over_l = true;

}

else

{

first = up (first, last) ;//підйом

over_l = false;

}

}

else// рух на спуск

{

if (get_stop () == true)

{

for (int i = 0; i

{

if ((cargo [i]. get_in () == true) && ((cargo [i]. get_last ()> last) &&

(cargo [i]. get_last ()

last = cargo [i]. get_last ();

if ((cargo [i]. get_out () == true) && ((cargo [i]. get_first ()> last) &&

(cargo [i]. get_first ()

last = cargo [i]. get_first ();

}

}

if (get_wload ()> get_weight ())// перевірка на перевантаження

{

overl (first);

over_l = true;

}

else

{

first = down (first, last) ;//спуск

over_l = false;

}

}

for (int i = 0; i

{

if ((cargo [i]. get_in () == true) && (cargo [i]. get_last () == first))

{

out (cargo [i]);

}

}

if (over_l == false)

{

for (i = 0; i

{

if ((cargo [i]. get_out () == true) && (cargo [i]. get_first () == first))

{

entry (cargo [i]);

}

}

}

j = 0;

while ((cargo [j]. get_in () == false) && (j

last = cargo [j]. get_last () ;//визначення наступного поверху,

// якщо в ліфті є вантаж

for (i = 0; i

if ((cargo [i]. get_out () == true) | | (cargo [i]. get_in () == true)) sum + +;

if ((get_wload () == 0) && (sum> 0))// визначення руху,

// якщо в ліфті немає вантажу

{

j = 0;

while ((cargo [j]. get_out () == false) && (j

last = cargo [j]. get_first ();

if (last> first) up (first, last);

else down (first, last);

}

} while (sum> 0) ;//поки є виклики

delay (2000);

outtextxy (25,70, "Робота завершена! Натисніть 'Enter' ");

}

У даній реалізації функція визначає порядок обслуговування викликів в Залежно від глобальної налаштування ліфта і вхідних даних. Робота ліфта задається циклом з операціями в наступному порядку:

1. задається напрямок руху ліфта;

2. перевіряється наявність викликів на даному поверсі;

3. перевіряється, чи є вантаж, для якого цей поверх кінцевий;

4. перевіряється наявність викликів на проміжних поверхах;

5. перевіряється перевищення вантажопідйомності;

6. здійснюється рух.

Цикл виконується до тих пір, поки не будуть обслужені всі виклики. br/> 3.3 Інструкція програмісту

При написанні класу В«вантажний ліфтВ» були використані наступні класи:

В· клас В«ВантажВ», що описує основні функції об'єкта В«вантаж для перевезенняВ». Цей клас використовується для створення масиву викликів для вантажного ліфта;

В· клас В«ЛіфтВ», що описує основну функціональність ліфта. Цей клас успадковується класом В«вантажний ліфтВ» з додаванням членів-даних і членів функцій.

...


Назад | сторінка 6 з 7 | Наступна сторінка





Схожі реферати:

  • Реферат на тему: My work at the foreign trade company
  • Реферат на тему: Проектування пристрою, що здійснює обробку вхідних сигналів
  • Реферат на тему: The types of extracurricular work in approach of foreign language
  • Реферат на тему: The life and work of the self-employed socialist intellectual, Humphrey McQ ...
  • Реферат на тему: Abstract work THE PROBLEM OF PROTECTION OF HUMAN RIGHTS AS THE MOST IMPORTA ...