第三次C++做业

在用两种语言完成电梯调度问题时的感觉

用C语言完成的电梯做业时:

当我用C语言实现电梯问题的时候,我首先想到的就是怎么才能实现这个调度。
我首先把一个模拟电梯的函数给打了出来,先让这个程序模拟电梯的运行,而后加入了算法。在C语言完成电梯问题的过程当中,我用了一个,我用了不少的函数来实现这个电梯的代码。就是想着怎么让这个电梯能完成这个最短期的分配就好。因而我就把全部的变量写在这个Cpp里。
  我是这么完成的:
  1. 首先在代码中写出代码须要的变量。
  2. 而后我在把模拟电梯的函数打好。
    3。再加入电梯的调度算法。算法

    我用C++完成电梯问题时:

    我先创建了一个elevator类,而后再将这个类中的有关电梯的代码,电梯的变量打进去。就好像这个是专门负责电梯这一块的。在用C++打电梯的调度问题时,我用了一个cpp,一个.h把负责电梯的这一块代码写好,再放进头文件里。
    就是以为若是C语言来实现这个代码的时候是一个车间的话,C++则是一个公司吧。。不知道这样说对不对emmm.
    而后下面是个人类。函数

class elevector
{
public:
    int currentFloor;
    int input[3];
    int time;
    int floor;
    int passengerFloor;
    int targetFloor;
    int requestTime;
    elevector(void) ;
    ~elevector() ;
    void goToFloor1(int passengerFloor, int targetFloor, int requestTime, int *time, int* floor);
    void goToFloor2(int passengerFloor, int targetFloor, int requestTime, int *time, int* floor);
    void stop(int* time);
    //void updateDestinationQ(int floor);


};
void elevector::goToFloor1(int passengerFloor, int targetfloor, int requestTime, int *time, int* floor)
{
    int *nowTime;
    nowTime = time;
    if (requestTime > *nowTime)
        *time += (abs)(requestTime - *nowTime);
    *time += (abs)(*floor - targetfloor);
    *floor = targetfloor;
}
void elevector::goToFloor2(int passengerFloor, int targetfloor, int requestTime, int *time, int* floor)
{
    int *nowTime;
    nowTime = time;
    if (requestTime>*nowTime)
        *time += (abs)(requestTime - *nowTime);
    *time += (abs)(*floor - passengerFloor);
    *floor = passengerFloor;
}
void elevector::stop(int* time)
{
    *time += 1;
}
elevector::elevector(void)
{
}


elevector::~elevector()
{
}
相关文章
相关标签/搜索