diff --git a/README.md b/README.md index e8ba786..ab1791e 100644 --- a/README.md +++ b/README.md @@ -2,7 +2,7 @@ 董函铄 胡煜男 于博 袁楷昊 -**摘要**:本项目针对在机场中飞机的降落或起飞问题,实现了哪些功能。为了有效地存储和处理何种数据,采用了线性表、队列、排序、随机数等数据结构。为了解决时间单位内,飞机的降落或起飞问题,采用了什么算法,算法效率如何。针对其他特定需求做了哪些工作。项目的整体效果如何,有何亮点和创新。 +**摘要**:本项目针对在机场中飞机的降落或起飞问题,实现了对处理的飞机总数进行统计、飞机降落或起飞请求等功能。为了有效地存储和处理飞机总数,请求降落或起飞的飞机数,接受起飞或降落的飞机数,拒绝起飞或降落的飞机数,实际起飞或降落的飞机数等数据,采用了线性表、队列、排序、随机数等数据结构。为了解决时间单位内,飞机的降落或起飞问题,采用了c++算法,算法效率中等,项目的整体效果较好。 @@ -26,45 +26,102 @@ ## 1.1 问题描述 -问题描述和具体要求。 +考虑一个繁忙的小型机场仅有一个跑道。在每个单位时间内,只有一架飞机可以降落或起飞,但不能同时进行。随时有飞机准备着降落或起飞,因此在任何给定的时刻,跑道可能是空闲的,或者一架飞机正在降落或起飞,也可能有几架飞机等待着降落或起飞。在模拟中,我们特别关注飞机在起飞或降落时需要排队等待的时间,因此,测量时间对我们的程序至关重要。我们将模拟时间划分为单位,使得在任何给定的时间单位内,只有一架飞机可以利用跑道进行起飞或降落。 ## 1.2 可行性分析 -明确解决问题的关键,核心数据结构,核心算法等。 +机场只有一个跑道,准备降落的飞机和准备起飞的飞机分别组成一个队列,排队等待降落和起飞。 -确定解决问题的总体思路和方案。 +机场只有一个跑道,准备降落的飞机和准备起飞的飞机分别组成一个队列,排队等待降落和起飞。 ## 1.3 需求分析 ### (1)输入和输出 -确定系统的主要输入和输出,如可以设定的参数,数据文件等,明确其主要作用。 +####输入: + 请输入飞机场运行的时间。 + 请输入降落和起飞队列最多容纳的飞机数。 + 请输入平均每个单位时间请求降落的飞机数。 + 请输入平均每个单位时间请求起飞的飞机数。 + +####输出: + x号时间x号飞机降落了,等了x个单位时间。 + x号时间x号飞机飞走了,等了x个单位时间。 + x号时间没有飞机降落,也没有飞机起飞,此时跑道为空。 + x号飞机请求降落,并进入降落队伍。 + x号飞机请求降落但被拒绝了。 + x号飞机请求起飞,并进入起飞队伍。 + x号飞机请求起飞但被拒绝了。 + 历经d个单位时间,机场停止接收请求。 + 一共收到了d架飞机的请求。 + 一共有d架请求降落。其中有d架被接受了,d架被拒绝了。 + 一共有d架请求起飞。其中有d架被接受了,d架被拒绝了。 + 成功降落了d架,还有d架在排队等待降落。 + 成功起飞了d架,还有d架在排队等待起飞。 + 轨道有d的时间是空闲的。 + 降落平均要等d个单位时间。 + 起飞平均要等f个单位时间。 + 这个机场平均每个单位时间收到f个降落请求。 + 这个机场平均每个单位时间收到f个起飞请求。 ### (2)数据字典 -描述系统中需要处理的所有数据包含的具体信息。例如: - -学生 = 学号 + 姓名 + 成绩 +飞机场运行时间; +降落和起飞队列最多容纳的飞机数; +平均每个单位时间请求降落的飞机数; +平均每个单位时间请求起飞的飞机数; +每个单位时间内,平均起飞(降落)的飞机数。 ### (3)数据文件 -系统中需要读取xx数据文件以获取xx数据,或者需要导出xx数据。举例说明xx数据文件的具体格式。 +无数据文件,系统直接产生随机数 ### (4)参数设定 -系统开始运行时,需要设置的参数。可以用户手册的形式给出设定参数的过程,如系统提示信息和用户输入等。 - -### (5)XX功能 +请输入飞机场运行的时间:24 +请输入降落和起飞队列最多容纳的飞机数:6 +请输入平均每个单位时间请求降落的飞机数:3 +请输入平均每个单位时间请求起飞的飞机数:2 +每个单位时间内,平均起飞(降落)的飞机数:系统随机产生 -其他具体功能。 +### (5)处理已经在队列里的飞机的功能 -首先简要说明该功能的主要作用,可以用户手册的形式给出系统提示信息、用户输入和系统输出等。 +``` +输出: + +##0号时间## +没有飞机降落,也没有飞机起飞,此时跑道为空。 + +##1号时间## +没有飞机降落,也没有飞机起飞,此时跑道为空。 +0号飞机请求降落,并进入降落队伍。 +1号飞机请求降落,并进入降落队伍。 +2号飞机请求降落,并进入降落队伍。 +3号飞机请求降落,并进入降落队伍。 +4号飞机请求起飞,并进入起飞队伍。 +5号飞机请求起飞,并进入起飞队伍。 +6号飞机请求起飞,并进入起飞队伍。 +7号飞机请求起飞,并进入起飞队伍。 +8号飞机请求起飞,并进入起飞队伍。 +``` +###(6)系统汇总功能 -### (6)XX功能 +``` +输出: +一共收到了106架飞机的请求。 +一共有60架请求降落。其中有27架被接受了,33架被拒绝了。 +一共有46架请求起飞。其中有6架被接受了,40架被拒绝了。 -其他功能逐项列出。 +成功降落了22架,还有5架在排队等待降落。 +成功起飞了0架,还有6架在排队等待起飞 +轨道有8.33%的时间是空闲的。 +降落平均要等3.88个单位时间。 +起飞平均要等0.00个单位时间。 +这个机场平均每个单位时间收到2.50个降落请求。 +这个机场平均每个单位时间收到1.92个起飞请求。 +``` # 2. 系统设计