




已阅读5页,还剩4页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
#include using namespace std;const int MostLayers = 100;class CElevatorpublic:CElevator();CElevator(int uLayers, int lLayers);CElevator(CElevator &myElevator); void PressOuterButton(int direction, int floor);void PressInnerDigitalButton(int floor);void PressOpen_CloseButton(int operate);void PressAlert();void run();CElevator();protected:void OpenElevator();void CloseElevator();void UserOperate();const int UpperLayers;const int LowerLayers;int States5;int DigitalButtonMostLayers;int OuterDownButtonMostLayers;int OuterUpButtonMostLayers;CElevator:CElevator():UpperLayers(10),LowerLayers(1)States0 = 0;States1 = 1;States2 = 0;States3 = 1;States4 = 0;for(int i=0;iMostLayers;i+)DigitalButtoni = 0; OuterDownButtoni = 0; OuterUpButtoni = 0;CElevator:CElevator(int uLayers, int lLayers):UpperLayers(uLayers),LowerLayers(lLayers)States0 = 0;States1 = 1;States2 = 0;States3 = 1;States4 = 0;for(int i=0;iMostLayers;i+)DigitalButtoni = 0; OuterDownButtoni = 0; OuterUpButtoni = 0;CElevator:CElevator(CElevator &myElevator):UpperLayers(myElevator.UpperLayers),LowerLayers( myElevator.LowerLayers)States0 = myElevator.States0; States1 = myElevator.States1;States2 = myElevator.States2;States3 = myElevator.States3;States4 = myElevator.States5;for(int i=0;iMostLayers;i+)DigitalButtoni = myElevator.DigitalButtoni;OuterDownButtoni = myElevator.DigitalButtoni;OuterUpButtoni = myElevator.DigitalButtoni;CElevator:CElevator()void CElevator:PressOuterButton(int direction, int floor) if(direction=0)OuterUpButtonfloor-LowerLayers-1 = 1;elseOuterDownButtonfloor-LowerLayers-1 = 1;void CElevator:PressInnerDigitalButton(int floor)DigitalButtonfloor-LowerLayers-1 = 1;void CElevator:PressOpen_CloseButton(int operate)if(operate = 0) OpenElevator();elseCloseElevator();void CElevator:OpenElevator()if(States3 = 0)cout电梯已打开,请先出后进!endlendl;else cout电梯正在打开 电梯已打开,请先出后进!endlendl; States3 = 0;void CElevator:CloseElevator() if(States3 = 1)cout电梯已关闭,请保持安静!endlendl;else cout电梯正在关闭 电梯已关闭,请保持安静!endlendl;States3 = 1;void CElevator:PressAlert()cout电梯内部有人报警,请援助!endl;States4 = 1;void CElevator:UserOperate()int alm = 0;coutalm;coutendl;if(alm=1)States4 = 1;while(States4=1)coutalm;coutendl;if(alm = 0 | alm =1)States4 = alm;elsecout维修数据不正确!endl;OpenElevator();cout请电梯内乘客输入所要到达的楼层!endl;coutfloor;if(floor=0)break;if(floor=LowerLayers) & (floor=UpperLayers) & (floor!=States1)if(floor0) DigitalButtonfloor-LowerLayers = 1;elseDigitalButtonfloor-LowerLayers-1 = 1;coutendl;cout请电梯外部乘客输入上楼信号!endl;coutfloor;if(floor=0)break;elseif(floor=LowerLayers) & (floorUpperLayers) & (floor!=States1)if(floor0)/地下OuterUpButtonfloor-LowerLayers = 1;else/地上OuterUpButtonfloor-LowerLayers-1 = 1;coutendl;cout请电梯外部乘客输入下楼信号,endl;coutfloor;if(floor=0)break;elseif(floorLowerLayers) & (floor=UpperLayers) & (floor!=States1)if(floor0)/地下OuterDownButtonfloor-LowerLayers = 1;else/地上OuterDownButtonfloor-LowerLayers-1 = 1;coutendl;int direction = 0;cout电梯将要关闭,等人请按打开按钮!endl;coutdirection;coutendl;if(direction=1)OpenElevator(); for(int i=0;i50;i+);CloseElevator();coutdirection;coutendl;if(direction=0)for(int i=0;i50;i+);CloseElevator();elseCloseElevator();void CElevator:run()while(true)if(States0=0)cout电梯停在States1层!endl;if(States2=0)if(States10)OuterUpButtonStates1-LowerLayers = 0;DigitalButtonStates1-LowerLayers = 0;elseOuterUpButtonStates1-LowerLayers-1 = 0;DigitalButtonStates1-LowerLayers-1 = 0;elseif(States10)OuterDownButtonStates1-LowerLayers = 0;DigitalButtonStates1-LowerLayers = 0;elseOuterDownButtonStates1-LowerLayers-1 = 0;DigitalButtonStates1-LowerLayers-1 = 0;if(States1=1)couttemp;if(temp=1)exit(0);coutendl; UserOperate();States0 = 1;elseif(States2=0)States1+;if(States1=0)States1+;elsecout电梯向上运行,将要到达States1层!endlendl;if(States1=UpperLayers)States2 = 1; States0 = 0;elseif(OuterUpButtonStates1-LowerLayers-1=0 & DigitalButtonStates1-LowerLayers-1=0)cout没有乘客在States1层上下,电梯继续向上运行!endlendl;elseStates0 = 0;else/向下States1-;if(States1=0)States1 = -1;elsecout电梯向下运行,将要到达States1层!endlendl;if(States1=LowerLayers)States2 =
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年微滴灌施肥装置项目发展计划
- 2025年放射性核素遥控后装机项目建议书
- 2025年证券经纪代理与营业部服务项目发展计划
- 抗生妇产科素使用课件
- 2025年海南省澄迈县中考数学模拟试卷(二)(含答案)
- 2025年汽车轮胎压力监测系统合作协议书
- 2025年青马班考试题目及答案
- 2025年毕节地区考试试卷及答案
- 2025年设备能源考试题型及答案
- 慢性肉芽肿性疾病
- 《火灾调查 第2版》 课件 第5-7章 火灾调查分析、放火火灾调查、电气火灾调查
- 2024-2025学年人教版数学九年级上册第一次月考试题
- 加油加气站 反恐防范重点目标档案 范例2024
- 潮牌产品商业计划书
- 消化道出血诊疗规范2022版
- 混龄教育及带班技巧培训
- Q∕GDW 1480-2015 分布式电源接入电网技术规定
- 洪泽县LED道路照明及智慧应用工程建设项目建议书
- 储能柜质保协议
- 教学课件 《自动化制造系统(第4版)》张根保
- 2020年中考语文考点突破:部编九年级古诗文默写(教师版)
评论
0/150
提交评论