北京工业大学-数据结构课设-理发馆-报告.pdf

上传人:深夜****等你... 文档编号:84216279 上传时间:2023-04-04 格式:PDF 页数:16 大小:1.98MB
返回 下载 相关 举报
北京工业大学-数据结构课设-理发馆-报告.pdf_第1页
第1页 / 共16页
北京工业大学-数据结构课设-理发馆-报告.pdf_第2页
第2页 / 共16页
点击查看更多>>
资源描述

《北京工业大学-数据结构课设-理发馆-报告.pdf》由会员分享,可在线阅读,更多相关《北京工业大学-数据结构课设-理发馆-报告.pdf(16页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、 理发馆 ;学 号_110703xx_ 姓 名_xxx_ 指导教师_xx_ 2013 年 10 月 目录 1 需求分析 3 1.1 程序功能介绍 3 1.2 程序数据要求 3 开发与运行环境需求 4 用户界面设计 5 2 数据结构设计 7 主要数据结构 7 程序整体结构 11 模块功能描述 11 3 详细设计 12 4 测试 22 正确运行示例 22 错误运行示例 24 5 总结提高 25;1 需求分析 程序功能介绍 本程序模拟理发馆一天的经营状况,理发馆的环境如下:1理发馆有 N 把理发椅,可同时为 N 位顾客进行理发(2Ninput_time0maohaoinput_time1;elect

2、 工作时长:cqi.worktime 本日盈收:cqi.moneyendl;to_file=按级别=endlendl;for(int i=1;i chairs+1;i+)elect)class_money1+=cqi.money;class_worktime1+=cqi.worktime;if(2=cqi.select)class_money2+=cqi.money;class_worktime2+=cqi.worktime;,if(3=cqi.select)class_money3+=cqi.money;class_worktime3+=cqi.worktime;for(int i=1;i

3、1)setfillstyle(RED,SOLID_FILL);elect=select&cqi.length durtime,i);(new_event);/CustomerDeparture void BarberShop:BarberSimulation(Random&ran,barbergraph&bg,int chairs,float discount)OpenForDay(bg,chairs);/开门初始化 while(!()/事件驱动主体,只要事件表不为空则一直执行第一个事件 cur_event=next_event;/获取当前事件(表中第二个结点)if(0=cur_event-e

4、vent_type)/如果为 0 则为到来事件【CustomerArrived(ran,bg,discount);else CustomerDeparture(bg);next_event=cur_event-next_event;/将头结点后移 /cout(occurtime-420)/60:/occurtime-420)%60,event_type)endl;delete cur_event;/释放原头结点 ;/事件表长度减一 cout谢谢惠顾endl;closegraph();/关闭图形界面#include#include using namespace std;void main()b

5、arbergraph bg;/绘图对象 BarberShop bs;/理发馆对象 FileOperation fo;/文件操作对象 Random ran;/随机函数对象 ifstream from_file(,ios:in);/打开输入文件 (from_file,;/从文件读入开门时间,理发师信息,关门时间,折扣信息(可选),/();(ran,bg,;/开始营业 ofstream to_file(,ios:out);/打开输出文件,输出本日营业结果 (to_file,;/输出总盈利,各理发师工作时间、盈收,各级别理发师工时、盈收 4 测试 正确运行示例 输入数据:)程序运行界面 所有顾客信息

6、输出对照 !错误运行示例 输入数据:错误反馈:5 总结提高 这次为期十周的数据结构课程设计,虽然中间经历了代码被抄袭传播的不愉快经历,但对于我个人来说,对于编程风格的养成有很大的促进作用,同时也提高了我的逻辑思维能力。早在暑假 8 月的时候,我就早早地为这门课在写程序框架,一开始可以说是毫无头绪,然后我就按照课设的说明看了严蔚敏版数据结构那本书中的事件驱动那一节,了解了程序的基本架构。弄清楚了整个程序执行的大致流程。整个程序的流程大概就是初始开门时间,同时向事件表中插入第一个结点(在此假设开门时第一位顾客即到达),删除一个结点的时刻就可看做一个事件执行的时刻。在处理顾客到达事件时,首先为其用随

7、机函数产生 3 个题目中要求的数据,然后用Minimum 函数按 select 选择最短队列并入队,然后判定是否是队头,是队头还需要产生一个本顾客的离开事件插入事件表。之后按照 intertime 计算出下一顾客到达时间,将下一顾客到达事件也插入事件表。在处理顾客离开事件时,要生成下一个队头客户的离开事件插入事件表。当了解了这些以后我就开始了数据结构的设计,我所做的第一步是将程序中可能用到的 所有信息抽象成了 8 个类,其中包含了事件驱动的主体程序,GUI 是最后完成的。在类与函数的设计上,我尽量遵循高内聚、低耦合的设计原则,使功能划分明确,模块之间尽量分离。最开始的数据结构设计是在纸上书写的,由于思考不周,当程序整合的时候出现了调试不通过的情况,后来经过对各模块的调试,终于实现了程序要求的功能。这次的数据结构课设,让我对数据结构的设计有了初步的认识,对上学期数据结构课程也起到了一定的补充作用,让我体验到了学以致用的快乐。同时也对我编程习惯的养成起到了促进作用,促使我逐渐形成自己的编码风格,希望此类课程以后还能多多开展。最后,感谢老师的指导与检查工作!

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 小学资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁