Курсовая работа: Класс "Грузовой лифт"
if((i_number<=0)||(i_number>get_h()))
cout<<"В этом доме нет такого этажа!"<<endl;
} 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<<"В этом доме нет такого этажа!"<<endl;
if(i_number==cargo[i].get_first())
cout<<"Этому грузу не надо никуда ехать!"<<endl;
} while((i_number<=0)||(i_number>get_h())||(i_number==cargo[i].get_first()));
cargo[i].put_last(i_number);
do
{
cout<<"Весгруза(кг): ";
cin>>f_number;
if(f_number<0)
cout<<"Вес должен быть положительным!"<<endl;
if(f_number>get_weight()-cargo[i].get_pweight())
cout<<"Лифт не сможет поднять этот груз!"<<endl;
} 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)