1 / 8
文档名称:

project飞机场实验报告.doc

格式:doc   大小:341KB   页数:8页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

project飞机场实验报告.doc

上传人:q2299971 2017/8/14 文件大小:341 KB

下载得到文件列表

project飞机场实验报告.doc

文档介绍

文档介绍:Project 2
飞机场模拟问题
班级:2014级计科三班
姓名张万涛学号14348172
姓名张锐滨学号14348171
姓名覃佳学号14349020
【题目要求】
。用飞机场模拟程序做若干次试运行实验,调整准备着陆和起飞的飞机数的期望值,并找出在飞机不会被拒绝服务的条件下这些数字尽可能大的近似值。如果队列的长度增加或减少,那么这些值将会有什么变化?
,使飞机场有两条飞机跑道,其中一条总是用来着陆,另一条总是用来起飞。比较双跑道机场能服务的总飞机数和单条飞机跑道的飞机场的相应数字,前者是否为后者的两倍?
,使飞机场有两条飞机跑道,其中一条总是用来着陆,另一条总是用来起飞。如果某个队列是空的,那么两条跑道都能用于其他的队列。如果着陆队列总是满的,并且另一架飞机要到达着陆,那么将停止起飞,并将两条跑道都用于清理搁置的着陆飞机。
,使飞机场有3条飞机跑道,其中各保留一条总是用于着陆和起飞,第三条用于着陆,但在着陆队列为空的情况下,第三条亦可用于起飞。
(单条跑道),使得当每架飞机到达着陆时,它将有(作为它的数据成员的)一个(随机产生的)油位,以剩余的时间单元度量。如果飞机没有足够的油位在队列中等待,则允许它立即着陆。因此着陆队列里的飞机可能需要再等待附加的单元,因此可能用完自身的燃料。作为着陆函数的一部分要检查这一点,并查明在飞机由于燃料耗尽而开始坠毁前机场有多忙。
,这个占位程序既能用于调试程序又允许用户正确地控制每一个时间单元内每个队列到达的飞机数。
【数据结构与算法】
P1题目比较简单,就是把课本给的代码连同课本附录B生成随机数的方法进行整合。①输入结束时间、队列的最大值,飞机起飞和降落的频率,建立一条跑道。②初始化current_time的值为0,当时间未结束时进行一个循环。该循环大致是将等待降落的飞机加入等待降落队列,如果队列已满就拒绝它;将等待起飞的飞机加入等待起飞队列,如果队列已满也同样拒绝它。如果有飞机等待降落,则让飞机降落;若没有,就判断也没有飞机等待起飞,若也为空则为跑道是空闲状态;若有,则让飞机起飞。③跳出循环后,将飞机请求数、起飞降落数量和时间等等输出。
P2与P1有相似之处,不同的是有了起飞跑道和降落跑道两个。因此建立了等待起飞和等待降落两个队列。若有飞机等待降落,则让飞机降落;如果没有,则等待降落队列为空。在判断又无飞机要起飞,如果有,则让飞机起飞,如果没有,那么等待起飞队列也是空的。其他的步骤和P1大致相同。
P3题目是在P2的基础上再进行修改。与前面不同的是,降落跑道如果返回值是land(降落),则让等待降落的飞机降落。如果降落跑道没有飞机着陆,就判断返回值是否为take_off(起飞),如果也不是那么跑道空闲中;如果是,则让飞机起飞。其他与P1大致相同
Runway类的public成员中增加:
int arrival_size();
int departure_size();
int Runway::departure_size()
{
return ();
}
int Ru