项目名称:电梯调度
队员:闵芮 高琪
需求分析:
以春晖楼为例,春晖楼东办共11层,两部电梯。从一层至十一层中途不停的话大概需要35秒左右,每层停顿时,如无人为干扰停顿时间大概3秒左右。
需要解决的问题是当有人按电梯时怎样使电梯最快到达
设计思路:
1.以结构体来定义电梯,包括电梯编号,电梯所在楼层,电梯状态(上升,下降,停滞),电梯内人数,进入电梯人数,走出电梯人数
struct L{
int num;//编号
int floor;//楼层
//定义一个枚举类型State{1,0,-1}来表示电梯的状态,1表示上升,0表示停滞,-1表示下降
State isup;//状态
int n;//电梯内人数
int in-count;//进入电梯人数
int out-count;//走出电梯人数
}
2.定义电梯数组来表示一栋大楼中的电梯数
3.设两个随机数,一个表示进入电梯人数,一个表示走出电梯人数。走出电梯数不能大于电梯内人数,否则重置;
4.以循环实现电梯的上升和下降,i从0至n表示电梯上升,至n层后电梯开始下降。i从n至0表示下降。当电梯中人数为0时且进入人数为0时,电梯停滞
5.设置几次循环,将各次循环的电梯的各个状态参数以文本文件的形式输出
6.解决问题:当有人按电梯时,选择最快到达的电梯
编程安排:
3月10日至3月14日每天19:00~21:00,两小时,每人主编一小时
3月15日~16日 整理整合提交博客