1. 楼层由上至下依次编号为9,8,7,6,5,4,3,2,1,0。
每层都有向上和向下两个按钮,对应20个变量callup[0...9]和calldown[0...9]。
电梯内10个目标层按钮对应变量out[0...9]。
有人按下某个按钮时,相应的变量就增1,一旦要求满足后,该变量就减1。
当有多人的需求相同时,相应的处理时间就增长,用于模拟真实的情况。
2. 电梯处于三种状态之一:UP(上行),DOWN(下行)和Idle(等候)。
如果电梯处于Idle状态且不在1层超过20个时间单位时,则驶回1层。
当电梯处于Idle状态时,一旦收到前往另一层的命令,就转入UP或DOWN状态,执行相应的操作。
3. 其它重要的变量有:floor----当前电梯外乘客所在楼层;
calling----当前电梯外按下按钮的乘客所在的楼层;
up_or_down----电梯外某层按钮的状态(向上箭头或向下箭头);
waittime----电梯空闲时的等待时间;
total----电梯内的总人数(上限为15人);
电梯的数据结构:state----电梯的状态(UP,DOWN,IDLE)current-----电梯目前所处楼层imovingto----电梯的目标楼层队列成员的数据结构:floor―――所在楼层up_down―――目标方向(向上或向下)structqueue*next―――指向下一个成员4. 【进入排队】先在等候队列中查找,若有信息相同(所在楼层相同,目标方向一致)的成员,则对队列无任何操作。
若没有,则在队列末尾插入该人。
5. 【进入电梯】电梯根据人数停留一定时间单位,每进入一个人,从队列中删除该人,callup[ele.current]或者calldown[ele.current]减一,total加一。
6. 【走出电梯】电梯根据人数停留一定时间单位,每出去一个人out[ele.current]减一.7. 【电梯的活动】E1.[在一楼停候]若有人按下一个按钮,则调用相关函数(比如入队,置楼层标志位为1等)处理当前事件.E2.[改变状态]如果电梯处于Up(或Down)状态,但该方向的楼层却无人等待,则要看反方向楼层是否有人等待,而决定置State为Down(或Up)还是Idle。
E3.[让人出入]如果电梯不空且out[ele.current]!=0时,则电梯等候在该楼层出电梯的人离开。
接着检验在该楼层是否有等候前往同一方向去的乘客,若有则等候他们进入电梯。
总原则是先下后上。
E4.[在某楼层(非1楼)停候]若电梯到达目标楼层后,队列为空,则电梯在该楼层停候一定时间,在停候期间若有新的呼叫,则立即转入处理程序处理,否则返回一楼停候。
8. 电梯在上升或下降过程中需要不停地对当前方向上的最终楼层作调整。
比如当前向上,最终楼层为6楼,而有乘客在8楼按了按钮,则最终楼层调整为8楼。
相反方向同理。
2024/4/2 8:05:07 59KB 电梯模拟 用C语言写的
1
共包含6大类20个细粒度要素的情感倾向.数据集分为训练、验证、测试A与测试B四部分。
数据集中的评价对象按照粒度不同划分为两个层次,层次一为粗粒度的评价对象,例如评论文本中涉及的服务、位置等要素;
层次二为细粒度的情感对象,例如“服务”属性中的“服务人员态度”、“排队等候时间”等细粒度要素。
每个细粒度要素的情感倾向有四种状态:正向、中性、负向、未提及.
1
人月神话书自第一版以来,畅销20余年不衰,是软件领域绝无仅有的必读经典。
本文作者为人们管理复杂项目提供了颇具洞察力的见解,既有很多发人深省的观点,也有大量的软件工程实践。
本书内容来自布鲁克斯在IBM公司System/360家族和OS/360中的项目管理经验。
在本书第一次出版20年后的今天,布鲁克斯重新审视了他原先的观点,增加了一些新的想法和建议。
既方便了熟悉原有内容的人们,也方便了许多第一次阅读它的读者。
2024/3/29 19:29:31 1.08MB 人月神话 软件工程
1
一、填空题(每小题4分,共20分)1.在4、9、36这三个数中:(   )是(   )和(   )的倍数,(   )和(   )是(   )的因数;
36的因数一共有(   )个,它的倍数有(   )个。
2.在下面括号里填上适当的数。
0.36÷1.2=()÷12=()87÷0.03=()÷3=()375÷0.25=()÷25=()2.4÷0.06=240÷()=()3.在27、68、44、72、587、602、431、800中。
奇数有(       ),   偶数有(       )。
4.个位上是()的数,都能被2整除;
个位上是()的数,都能被5整除;
个位上是()的数既能被2整除又能被5整除。
1
表达式计算是实现程序设计语言的基本问题之一,也是栈的应用的一个典型例子。
设计一个程序,演示用算符优先法对算术表达式求值的过程。
基本要求:以字符序列的形式从终端输入语法正确的、不含变量的整数表达式。
利用教科书表3.1给出的算符优先关系,实现对算术四则混合运算表达式的求值,并仿照教科书的例3-1演示在求值中运算符栈、运算数栈、输入字符和主要操作的变化过程。
测试数据:3*(7-2);8;1+2+3+4;(((6+6)*6+3)*2+6)*2;(20+2)*(6/2);
2024/3/25 20:06:28 3KB 算术表达式求值
1
对于一个二元非线性函数z=f(x,y),构建神经网络并对其进行训练,使其在定义域内对此二元函数进行拟合。
主函数是bp2.py,配好环境解压后直接打开运行即可,现在是迭代20次,如果需要换函数,修改21行的z[j][i]
2024/3/25 19:13:37 5KB python 神经网络 拟合函数
1
flstudio_20.0.3官方版本.exe全能音乐制作软件
2024/3/24 2:13:48 663.58MB 软件测试
1
JavaScriptESLint规则JavaScriptESLint捆绑了最佳实践和通用规则,用于编写更一致的代码。
其他类似的捆绑包:,,和安装npminstall@asd14/eslint-config--save-dev目标运行npminfo"@asd14/eslint-config@latest"peerDependencies以获取所需的基本软件包。
应该是这样的:"eslint":"7.20.0","eslint-config-prettier":"^7.2.0","eslint-plugin-import":"^2.22.1","eslint-plugin-jsdoc":"32.0.0","eslint-plugin-json":"^2.1.2","eslint-plugin-no-infer
2024/3/22 10:06:05 251KB react javascript eslint best-practices
1
INSERTINTO`medicine`VALUES(1005757,'国药准字H20058147','25mg*50粒','环孢素软胶囊(赛洛明)','广东仙乐制药有限公司','6924217100619',NULL,NULL,NULL,'2019-02-2014:59:42');INSERTINTO`medicine`VALUES(1005733,'国药准字Z22023795','0.3g*20片*3板','脑得生片(通经路达)','吉林省松辽制药有限公司','6927544318139',NULL,NULL,NULL,'2019-02-2014:59:41');
2024/3/21 21:34:42 1.81MB 药品信息 数据库
1
这个教程好东西,里面囊括了所有需要的as3.0详细教程文档内介绍:关于本手册.13使用本手册.13访问ActionScript文档.14ActionScript学习资源.16第1章:ActionScript3.0简介.17关于ActionScript.17ActionScript3.0的优点.18ActionScript3.0中的新增功能.18核心语言功能18FlashPlayerAPI功能.20与早期版本的兼容性.21第2章:ActionScript快速入门.23编程基础.23计算机程序的用途
2024/3/19 4:02:17 3.58MB as3.0详细教程 as3.0 教程下 as3.0chm文档
1
共 1000 条记录 首页 上一页 下一页 尾页
在日常工作中,钉钉打卡成了我生活中不可或缺的一部分。然而,有时候这个看似简单的任务却给我带来了不少烦恼。 每天早晚,我总是得牢记打开钉钉应用,点击"工作台",再找到"考勤打卡"进行签到。有时候因为工作忙碌,会忘记打卡,导致考勤异常,影响当月的工作评价。而且,由于我使用的是苹果手机,有时候系统更新后,钉钉的某些功能会出现异常,使得打卡变得更加麻烦。 另外,我的家人使用的是安卓手机,他们也经常抱怨钉钉打卡的繁琐。尤其是对于那些不太熟悉手机操作的长辈来说,每次打卡都是一次挑战。他们总是担心自己会操作失误,导致打卡失败。 为了解决这些烦恼,我开始思考是否可以通过编写一个全自动化脚本来实现钉钉打卡。经过一段时间的摸索和学习,我终于成功编写出了一个适用于苹果和安卓系统的钉钉打卡脚本。
2024-04-09 15:03 15KB 钉钉 钉钉打卡