博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
电梯调度 最终版
阅读量:7071 次
发布时间:2019-06-28

本文共 17819 字,大约阅读时间需要 59 分钟。

信1101-2

20113026 胡弦琴

20112917 王兵茹

  在上一次我们传的电梯调度二版本的基础上进行了一些改进及弥补,增加了门的动作,电梯调度二版本做了一些尝试例如调度四部电梯 但没有实现,于是便把心思花在完善它的现有功能上了,完善版功能如下:

 

(1)电梯的配置:

         1. 1至10层每层有上下两个按钮,1层只有上行按钮,10层只有下行按钮。每层都有相应的指示灯,灯亮表示该按钮已经被按下,如果该层的上行或者下行请求已经被响                  应,则指示灯灭。

        2. 电梯内共有10个目标按钮,表示有乘客要在该层下电梯。有指示灯指示按钮是否被按下。乘客按按钮导致按钮指示灯亮,如果电梯已经在该层停靠则该按钮指示灯灭。

  (2) 电梯的运行控制:

        1.电梯的初始状态是电梯位于第一层处,所有按钮都没有按下。

        2.乘客可以在任意时刻按任何一个目标钮和呼叫钮。呼叫和目标对应的楼层可能不是电梯当前运行方向可达的楼层。

        3. 如果电梯正在向I层驶来,并且位于I层与相邻层(向上运行时是I-1层或者向下运行时是I+1层)之间,则因为安全考虑不响应此时出现的I层目标或者请求。如果电梯正好经过了I楼层,运行在I楼层和下一楼层之间,则为了直接响应此时出现的I层目标或者请求,必须至少到达运行方向上的下一楼层然后才能掉头到达I楼层(假设掉头无须其它额外时间),如果I楼层不是刚刚经过的楼层则可以在任意位置掉头,此时掉头后经过的第一个楼层不可停。

       4. 电梯系统依照某种预先定义好的策略对随机出现的呼叫和目标进行分析和响应。

       5. 电梯停靠某一层后,苦无目标和呼叫,则电梯处于无方向状态,方向指示灯全灭,否则电梯内某个方向的指示灯亮,表示电梯将向该方向运行。

       6. 当一个目标(呼叫)已经被服务后,应将对应的指示灯熄灭。   

 

 

 

 

 

源程序如下(界面及功能实现代码):

using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Linq;using System.Text;using System.Windows.Forms;using System.Threading;namespace ElevatorManager{    public partial class Form1 : Form    {        const int UP = 0;        const int DOWN = 1;        const int EXTERIOR = 0;        const int INTERIOR = 1;        const int ELE1 = 0;        const int ELE2 = 1;        const int CLOSE = 0;        const int OPEN = 1;        List

 运行结果如下:

 

 

转载于:https://www.cnblogs.com/wangbingru/p/3615161.html

你可能感兴趣的文章
openstack概述
查看>>
How To Detect Which Element Was Clicked, Using jQuery
查看>>
javascript & jQuery
查看>>
DW快速去除tppabs冗余代码
查看>>
Java8新特性之:新的日期和时间API
查看>>
如何才能从程序员成长为实战型架构师?必掌握这7大实战技能经验
查看>>
rabbitMQ集群的搭建和维护第二篇---利用python程序完成mq的消息收发和实时监控
查看>>
网众设置开机重启服务的命令,才可连接BOOT服务器
查看>>
RHEL6.3 DNS配置详解一 DNS相关概念理解及配置基础
查看>>
Windows环境 和 Linux环境下搭建Qt开发环境
查看>>
简述synchronized和java.util.concurrent.locks.Lock的异同
查看>>
在win2008r2下开启ntp服务
查看>>
我的友情链接
查看>>
SpringMVC源码解析(三)——HandlerAdapter
查看>>
Python执行系统命令的方法
查看>>
动态加载远程Jar的实现方式
查看>>
无线***笔记(一)-《***WPA-PSK加密无线网络》
查看>>
MyEclipse10.1集成SVN
查看>>
Sitemesh和Struts2结合时Filter的配制顺序
查看>>
【python】编程语言入门经典100例--19
查看>>