模拟某校九层教学楼的电梯系统。该楼有一个自动电梯,能在每层停留,其中第一层是大楼的进出层,即是电梯的“本垒层”,电梯“空闲”时,将来到该层候命。电梯一共有七个状态,即正在开门(Opening)、已开门(Opened)、正在关门(Closing)、已关门(Closed)、等待(Waiting)、移动(Moving)、减速(Decelerate)。乘客可随机地进出于任何层。对每个人来说,他有一个能容忍
转载 2023-12-18 15:00:03
91阅读
一、项目要求概述1.1 项目目的通过控制电梯调度,实现操作系统调度过程学习特定环境下多线程编程的方法学习调度算法1.2 开发环境语言:java系统平台:全平台(具备java环境)IDE:Intellij IDEA产品呈现模式:jar包执行环境要求:安装javaWin:安装java配置环境变量后双击Linux/Mac:命令行:java –jar 电梯.jar1.3 基本需求模拟20层楼中5架电梯的调
转载 2024-05-10 19:19:48
64阅读
背景:        介绍状态模式前,我们先看这样一个实例:公司力排万难终于获得某个酒店的系统开发项目,并且最终落到了你的头上。下图是他们系统的主要工作:        当第一眼看到这个系统时你就看出这是一个状态图,每个框都代表了房间的状态
问题描述:某城市最高的楼只有一部电梯。该电梯和一般电梯不同的是它依照输入楼层数的先后次序运行。电梯最初在0层。运行完一个输入序列后就停止在该楼层,不返回0层。编写程序计算电梯运行一个序列的时间。每次都假设电梯在0层开始,无论上一次运行到几层。电梯每上1层需要6秒。每下1层需要4秒。如在某层停留,无论上下人多少,均停留5秒。输入:第一个数N指示后面将有N个楼层的序列,楼层的值大于等于1,小于100。
# 实现输入楼层和状态电梯运行 - Java开发指南 ## 引言 作为一名经验丰富的开发者,我非常乐意帮助刚入行的小白实现输入楼层和状态电梯运行。在本篇文章中,我将向你展示整个流程,并为每一个步骤提供代码示例和注释,帮助你理解和实现该功能。 ## 整体流程 下表展示了实现输入楼层和状态电梯运行的整体流程。 | 步骤 | 描述 | | --- | --- | | 1 | 获取楼层和状
原创 2023-09-14 08:27:08
86阅读
# Java状态机设计模式 - 电梯门 ![journey](journey) ## 介绍 在日常生活中,电梯门的开关是一个非常常见的场景。为了实现电梯门的开关功能,我们可以使用状态机设计模式。状态机设计模式是一种行为型设计模式,它通过将对象的行为和状态进行分离,使得对象在不同的状态下可以有不同的行为。在本文中,我们将使用Java编程语言来实现一个简单的电梯状态机。 ## 状态机设计模式
原创 2023-11-21 06:00:43
98阅读
目录1. 设计策略多线程间的协同同步控制2. 架构设计的可扩展性可扩展性功能设计和性能设计设计原则SOLID检查SPR-Single Responsibility PrincipleOCP-Open Close PrincipleLSP-Liskov Substition PrincipleISP-Interface Segregation PrincipleDIP-dependency Inve
转载 2023-07-19 11:38:00
159阅读
这次的作业是一个结对作业,我对我的Partner比较熟悉,信任和放心,而他对我也是如此,这对我们顺利完成项目有很大的有利影响。我们一开始比较默契的是都想到用Java语言进行编写代码,我认为以后工作可能对Java的优势比较大,另外我对Java,Eclipse也比较熟悉,于是我们就想通过这次作业提升一下自己的Java编程的能力。好了,下面介绍我们的代码——可以看到,我们设计了一共6个类,其中电梯有四个
Java实现电梯调度算法电梯算法简介题目代码实现效果图 电梯算法简介当磁头正在由里向外移动时,电梯调度算法所选择的下一个访问对象应是其欲访问的磁道,既在当前磁道之外,又是距离最近的。这样由里向外地访问,直至再无更外的磁道需要访问时,才将磁臂换向,由外向里移动。这时,同样也是每次选择在当前磁道之内,且距离最近的进程来调度。 ——摘自百度百科 网上大多将电梯调度算法和扫描算法看作同一个算法,我们老师
转载 2023-08-11 14:05:57
106阅读
概述刚刚过去的oo第二单元主要是来训练我们java多线程设计。借助电梯这个载体,逐步深入,线程的信息交互,控制也随之复杂。尽管,我本单元成绩不是很好看,但是,确实学到了不少东西。下面,我就借助分析三次作业,来谈下我的收获。作业分析第一次作业(1)任务分析本次作业需要模拟一个多线程实时电梯系统,从标准输入中输入请求信息,程序进行接收和处理,模拟电梯运行,将必要的运行信息通过输出接口进行输出。本次作业
转载 2023-07-19 22:02:19
129阅读
一、分次作业总结1、傻瓜电梯的调度(1)设计策略    作为面向对象中多线程的入门,电梯调度单元整体难度并不是很大,其中的重点就在于如何实现多线程中各个线程工作的安全执行。在第一次作业中最重要的是如何实现共享资源的维护,即如何实现共享队列的维护,保证电梯请求的有序执行;以及在请求结束时程序的正常退出。    在做第一次作业时,我的设计策略主要是用一个Arra
转载 2023-06-21 23:12:42
241阅读
在办公楼的电梯里高层期间,每层都有人上下。电梯呢只要每层有一个人都有停一次。这样比较麻烦,对于比较低的楼层(6层),每次电梯从一层往上走时,我们只允许电梯停在其中的某一层,然后所有的乘客爬楼梯到自己的目的层。在一楼时,每一位乘客选择自己的楼层,电梯根据每层的人数来计算出应该停的楼层.问:电梯停在哪一层,能够保证这次乘坐电梯的所以乘客爬楼梯层数之和最少.分析与解法:  &nbsp
一、程序实现的功能1) 在Main程序中进行初始化之后定义一个计时器,每秒钟执行一次遍历。根据程序条件,决定是否需要改变、改变成什么样的下状态。 2) 人选择到达自己楼层最快的电梯,且该电梯能停到自己要到达的楼层。 3) 如果出现多个人等待电梯时,每次电梯到达时从队列顺序上电梯电梯满时停止。 4)需要一秒钟激励一次,而且判断出如果所有的
/**作者:黄叶海 * 日期:2011.6-7 * 功能:电梯调度算法; * 说明:电梯调度算法的基本原则就是如果在电梯运行方向上有人要使用电梯则继续往那个方向运动,如果电梯中的人还没有到达目的地则继续向原方向运动。具体而言,如果电梯现在朝上运动, * 如果当前楼层的上方和下方都有请求,则先响应所有上方的请求,然后才向下响应下方的请求;如果电梯向下运动,则刚好相反。 * 设计要求:模拟
转载 2023-07-24 17:05:37
62阅读
  应王老师的作业要求,杨康和苏康奖于最经几天对学校里的电梯进行一定的调查,我们也经过了一些讨论看以后程序中的一些功能如何实现。  对学校办公楼的电梯进行的调查结果:电梯从一层到十一层,一共四台电梯,每台电梯限载十三人、限重九百公斤,电梯开关门时间约三秒,每名乘客上下电梯的时间约为三秒,电梯每上一层的时间约为三秒。  作业中电梯调度中的要
一、多线程电梯系列作业设计策略1. 第一次作业——"FAFS傻瓜电梯"第一次作业是先来先服务的"傻瓜电梯",我当时觉得这个设计未免太简单了,于是就在傻瓜电梯的基础上加上贪心算法,每次都执行电梯内外距离最近的请求(但是没有行进中的捎带)。由于第一次没有限制CPU时间,而且我的wait--notify用得不太熟,因此就采取了暴力轮询的方式。我将我将调度器线程写在了main函数中(这是个很不好的设计,第
  本单元主要通过电梯系列习题培养同学们的多线程编程能力,难度逐步递增。第一次最为简单,第二次、第三次则相对困难。我个人在三次作业中均使用wait与notifyAll来解决线程暂停与运行,三次作业架构基本相同,通过在类中增加不同方法来实现不同功能:思路清晰,大大简化了编程难度。一、作业总结及度量第一次作业  本次作业较为简单。在写本次作业之前我在网上通过Mooc学习了Java多线程课程,通过熟悉、
转载 2023-12-12 15:41:27
76阅读
伙伴成员:李伊 对于这次作业,我刚开始一点思绪都没有,在老师安排了结对伙伴李伊之后,我的搭档问我,我们需要什么编程语言来编写程序,我细想了一下,大一到大三,我们就学了C语言、C++就这两种语言,而且C一开始果断放弃,因为没法做界面,C++也觉得不靠谱,虽然可以做界面,但是太麻烦,也指望不上。进入大三以后,自己选修过JAVA,自学过安卓,而李伊也自学过JAVA,所以用JAVA来编写电梯这个作业也就一
电梯模拟的实现题目 模拟某校九层教学楼的电梯系统。该楼有一个自动电梯,能在每层停留,其中第一层是 大楼的进出层,即是电梯的“本垒层”,电梯“空闲”时,将来到该层候命。 电梯一共有七个状态,即正在开门(Opening)、已开门(Opened)、正在关门(Closing)、 已关门(Closed)、等待(Waiting)、移动(Moving)、减速(Decelerate)。 乘客可随机地进出于任何层。
转载 2023-10-24 12:08:30
101阅读
一.题目描述某栋楼只有一部电梯,当你按下一个数时,电梯就会运行到那一层。已知电梯上一层需要6s,下降一层需要4s,在需要停留的那层停留5s。现在,电梯里有若干人,每个人都有去不同楼层的可能性,请问,电梯在完成最后一人的请求后,一共花了多少时间。二.解题思路1.首先,我们需要了解电梯中的人按了多少次不同的楼层请求。 2.这些不同的请求是哪些楼层。 3.分别写出上楼和下楼所需时间函数。int main
转载 2023-10-24 08:08:08
102阅读
  • 1
  • 2
  • 3
  • 4
  • 5