C
-第一步
先构建一个结构体来代表电梯
-第二步
再构建一个结构体来存储指令
-第三步
构造相应的功能函数
-第四步
运用不同的函数对每条指令进行处理
C++
-第一步
先写一个电梯类
-第二步
写一个指令类
-第三步
进行调度
C与C++的区别
c语言是面向过程的语言,它和题目所给的问题关联度较大,程序员应该去思考如何解决这个问题,而不用去管电梯是什么样的,而c++语言更加关注电梯是什么样的,题目所给的问题只是通过电梯而衍生出来的,失去了题目,c语言程序就失去了作用,但是c++的电梯类还是可以运用到其他的题目上,它的可修改性更好,这就是面向对象的一大优点。
class Elevator{
public:
int direction;//方向,1为上,0为下
int currentfloor;//当前楼层
int totaltime;//当前时间
Elevator(int d,int c,int t);
~Elevator();
void showfloor();//显示楼层
void getcommand(int forfloor,int tofloor,int time);//指令
void newfloor(int c); //更新电梯楼层
} ;
Elevator::Elevator(int d=1;int c=0;int t=0)
{
direction=d;
currentfloor=c;
totaltime=t;
}//默认方向向上,初始楼层为0,时间为0
Elevator::~Elevator()
{
}
Elevator::showfloor()
{
cout>>currentfloor;
}
Elevator::newfloor(int c)
{
currentfloor=c;
}
Elevator::getcommand(int forfloor,int tofloor,int time)
{
if(totaltime<time)
totaltime=time;
totaltime+=abs(currentfloor-forfloor)+abs(forfloor-tofloor);
totaltime++;//时间处理
newfloor(tofloor);//更新楼层
}