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

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





; i -)

{

setcolor (15);

itoa (i, num, 10);

outtextxy (x +6,15, num);

if (i

{

setcolor (8);

itoa (i +1, num, 10);

outtextxy (x +31,15, num);

}

x-= 25;

delay (2000);

}

setcolor (15);

rectangle (5,40,150,60);

setcolor (15);

outtextxy (25,47, "Двері відкриті!");

return b;

}

Функція ідентична функції підйому ліфта.

В· void turning ()

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

void car_lift :: turning ()

{

float f_number = 0;

int i_number = 0;

cout <<"Введення необхідних даних! "<

cout <<"Введіть кількість людина, що очікують ліфт: ";

cin>> i_number;

put_load (i_number);

for (int i = 0; i

{

cout <

do

{

cout <<"Початковий поверх:";

cin>> i_number;

if ((i_number <= 0) | | (i_number> get_h ()))

cout <<"У цьому будинку немає такого поверху! "<

} while ((i_number <= 0) | | (i_number> get_h ()));

cargo [i]. put_first (i_number),

do

{

cout <<"Кінцевий поверх:";

cin>> i_number;

if ((i_number <= 0) | | (i_number> get_h ()))

cout <<"У цьому будинку немає такого поверху! "<

if (i_number == cargo [i]. get_first ())

cout <<"Цьому вантажу не треба нікуди їхати! "<

} while ((i_number <= 0) | | (i_number> get_h ()) | | (i_number == cargo [i]. get_first ()));

cargo [i]. put_last (i_number);

do

{

cout <<"Вага вантажу (кг): "; p> cin>> f_number;

if (f_number <0)

cout <<"Вага повинна бути позитивним! "<

if (f_number> get_weight ()-cargo [i]. get_pweight ())

cout <<"Ліфт не зможе підняти цей вантаж! "<

} while ((f_number <= 0) | | (f_number> get_weight ()-cargo [i]. get_pweight ()));

cargo [i]. put_load (f_number);

}

}

У даній реалізації проводиться перевірка вводятьсязначень, щоб уникнути некоректних даних. Наприклад, що задаються поверхи повинні бути в діапазоні від 1 до останнього в даному будинку, початковий і кінцевий поверхи не повинні збігатися, вага супроводжуваного вантажу повинен бути більше нульового і сумарна вага вантажу і супроводжуючого його людини не повинен бути більше вантажопідйомності ліфта.

В· void entry (load & L)

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

void car_lift :: entry (load & l)

{

l.put_in (true),

l.put_out (false);

put_wload (get_wload () + l.get_pweight () + l.get_load ());

}

У даній реалізації функція записує значення В«істинаВ» в полі, визначальне знаходження даного вантажу в ліфті і значення В«брехняВ» - у полі, визначальне знаходження даного вантажу поза ліфта. У поле, що визначає вага вантажу і пасажира в ліфті, функція підсумовує попередній вага, вага увійшов пасажира і супроводжуваного вантажу.

В· void out (load & l)

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

void car_lift :: out (load & l)

{

l.put_in (false);

l.put_out (false);

put_wload (get_wload ()-l.get_pweight ()-l.get_load ());

}

У даній реалізації функція записує значення В«брехняВ» в полі, визначальне знаходження даного вантажу в ліфті і значення В«брехняВ» - у полі, визначальне знаходження даного вантажу поза ліфта. У поле, що визначає вага вантажу і пасажира в ліфті, функція записує значення, отримане при вирахуванні з попереднього ваги вага вийшов пасажира і супроводжуваного вантажу.

В· void overl (int floor)

Функція здійснює зміну членів-даних класу у зв'язку з тимчасовим виходом пасажира з ліфта через перевантаження. Приклад реалізації функції наведено нижче:

void car_lift :: overl (int floor)

{

grow_overl ();

closegraph ();

int i_number;

bool buf = true;

cout <<"Перевантаження! Одна людина має вийти! "<

do

{

cout <<"Введіть номер пасажира, який вийде "<

cin>> i_number;

buf = cargo [i_number-1]. get_in ();

if (cargo [i_number-1]. get_in () == false) cout <<"Такого пасажира в ліфті немає!" <

else

{

cargo [i_number-1]. put_in (false);

cargo [i_number-1]. put_out (true);

cargo [i_number-1]. put_first (floor);

put_wload (get_wload ()-cargo [i_number-1]. get_pweight ()-cargo [i_number1]. get_load ()); <...


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





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

  • Реферат на тему: Розробка програми на платформі Android на тему "Інформатика - 2 клас&q ...
  • Реферат на тему: Контрольні й перевірочні роботи з біології при вивченні розділу "Твари ...
  • Реферат на тему: Модернізація теплохода проекту Р33Б під клас Російського Річкового Регістру ...
  • Реферат на тему: Проведення аудиторської перевірки обліку основних засобів на прикладі підпр ...
  • Реферат на тему: Методика Формування умінь и навічок здорового способу життя в курсі "О ...