一个C++程序作业,模拟电梯运行
/**Elevator。h*ElevatorAssignment**CreatedbyIsaacHuangon08-6-23。*Copyright2008__MyCompanyName__。Allrightsreserved。**/classElevator{ :Elevator();voidChangeFloor(int);intGetFloor();voidWorking();};/**Elevator。
cpp*ElevatorAssignment**CreatedbyIsaacHuangon08-6-23。*Copyright2008__MyCompanyName__。Allrightsreserved。**/#include"Elevator。
h"#include<iostream。h>Elevator::Elevator():WhichFloor(1){}voidElevator::ChangeFloor(intnum){cout<<"ElevatorGoesFrom"<<WhichFloor<<"To"<<num<<endl;WhichFloor=num;}intElevator::GetFloor(){returnWhichFloor;}/**Building。
h*ElevatorAssignment**CreatedbyIsaacHuangon08-6-23。**/#include"Floor。h"#include"Elevator。h"classBuilding{ :Building();voidRunning(int);voidPrint(int);};/**Building。
cpp*ElevatorAssignment**CreatedbyIsaacHuangon08-6-23。**/#include"Building。h"#include<stdlib。h>#include<iostream。
h>#include<time。h>Building::Building():Floor1(1),Floor2(2),WorkTime(0){}voidBuilding::Running(intOrderTime){inti,iLater1=0,iLater2=0,Spent;for(i=1;i<=OrderTime;i+=Spent){Spent=1;srand(time(0));intNumber1=5+rand()%16;if((i-iLater1)==Number1){Floor1。
CreatePeople();iLater1=i;}srand(time(0));intNumber2=5+rand()%16;if((i-iLater2)==Number2){Floor2。CreatePeople();iLater2=i;}if(Eleva。
GetFloor()==1){if(Floor1。ReturnPeople()!=0){Floor1。GetInside();Eleva。ChangeFloor(2);WorkTime++;Spent=5;Print(i+Spent);}elseif(Floor2。
ReturnPeople()!=0){Eleva。ChangeFloor(2);Floor2。GetInside();Eleva。ChangeFloor(1);WorkTime++;Spent=10;Print(i+Spent);}}elseif(Eleva。
GetFloor()==2){if(Floor2。ReturnPeople()!=0){Floor2。GetInside();Eleva。ChangeFloor(1);WorkTime++;Spent=5;Print(i+Spent);}elseif(Floor1。
ReturnPeople()!=0){Eleva。ChangeFloor(1);Floor1。GetInside();Eleva。ChangeFloor(2);WorkTime++;Spent=10;Print(i+Spent);}}}//Print(OrderTime);}voidBuilding::Print(intTime){cout<<"WorkTime:"<<Time<<"s"<<endl;cout<<WorkTime<<"PeopleHaveBeenTransported。
"<<endl;cout<<"TheNumberOfPeopleOnThe1stFloor:"<<Floor1。ReturnPeople()<<endl;cout<<"TheNumberOfPeopleOnThe2ndFloor:"<<Floor2。
ReturnPeople()<<endl;}/**Floor。h*ElevatorAssignment**CreatedbyIsaacHuangon08-6-23。**/classFloor{ :Floor(int);voidCreatePeople();voidGetInside();intReturnNumber();intReturnPeople();};/**Floor。
cpp*ElevatorAssignment**CreatedbyIsaacHuangon08-6-23。**/#include"Floor。h"Floor::Floor(intnum):FloorNumber(num){if(FloorNumber==1)PeopleOnThisFloor=100;elsePeopleOnThisFloor=100;}voidFloor::CreatePeople(){PeopleOnThisFloor++;}intFloor::ReturnNumber(){returnFloorNumber;}voidFloor::GetInside(){PeopleOnThisFloor--;}intFloor::ReturnPeople(){returnPeopleOnThisFloor;}#include"Building。
h"intmain(){BuildingSample;Sample。Running(3600);return0;}。
我估计你在开玩笑
答:朋友你好! main() { int floor;/*存放电梯当前层数。1234和-1为相应的层数,若为0,则是电梯正在运行中(必须记录电梯的状态,否则乘客...详情>>