zoukankan      html  css  js  c++  java
  • 电梯调度

    一、程序实现的功能

    1) Main程序中进行初始化之后定义一个计时器,每秒钟执行一次遍历。根据程序条件,决定是否需要改变、改变成什么样的下状态。 

    2) 人选择到达自己楼层最快的电梯,且该电梯能停到自己要到达的楼层。 

    3) 如果出现多个人等待电梯时,每次电梯到达时从队列顺序上电梯,电梯满时停止。 

    4)需要一秒钟激励一次,而且判断出如果所有的人都已经已经进入电梯,则停止。

    5)如果出现超重现象则发出警报声,电梯停止。

    二、设计思想

    1) 程序要会判断模拟结束并自动停止,那么就必须定义一个变量表明已经调度结束的人的个数。 

    2) 定义两个对象数组存放电梯对象的引用和已经创建的人的对象引用。对所有的对象进行遍历。

    3) 时间控制:将所有的人和电梯的对象遍历一遍。 

    4) 定义一个静态变量记录一个人上电梯所用的时间。

    5)电梯运动的方向,-1表示向下,1表示向上。0表示电梯未被调度。 

    6) 设计一个方法对电梯中人数的进行改动。要判断电梯是否有人上下:按先下后上的原则,改变电梯中的人,若无人上下,则判断电梯是否要静止?还是继续前进?

    7) 当电梯满时,这个楼层中还有等待上电梯的人。让等的人重新选择电梯。 

    8) 判断电梯沿某个方向是否还有人要上或者下电梯,没有但是在反向上有人上或者下,那么电梯就要进行反向运动。 

    9)如果出现超重现象,电梯停止运行,等电梯重量不再超重后再次运行。

  • 相关阅读:
    eclipse下mysql编程
    mysql简单操作一
    Mysql ubuntu下的安装卸载
    c++ 上机实验题
    Android BottomSheet:以选取图片为例(2)
    Android BottomSheet:便捷易用的底部滑出面板(1)
    如何绘制caffe网络训练曲线
    10+资深软件架构师谈计算机专业——填高考志愿必读
    添物不花钱学计算机及编程(预备篇)
    Android StatusBarUtil:设置Android系统下方虚拟键键盘透明度
  • 原文地址:https://www.cnblogs.com/luan/p/3591596.html
Copyright © 2011-2022 走看看