Merge branch '王振宇'

remotes/1716395074552267297/master
宋岱瑾 2 years ago
commit aaf920be8c

@ -1,10 +1,10 @@
{
"C_Cpp_Runner.msvcBatchPath": "",
"C_Cpp_Runner.cCompilerPath": "gcc",
"C_Cpp_Runner.cppCompilerPath": "g++",
"C_Cpp_Runner.debuggerPath": "gdb",
"C_Cpp_Runner.cStandard": "",
"C_Cpp_Runner.cppStandard": "",
"C_Cpp_Runner.msvcBatchPath": "",
"C_Cpp_Runner.useMsvc": false,
"C_Cpp_Runner.warnings": [
"-Wall",

48
.vscode/tasks.json vendored

@ -0,0 +1,48 @@
{
"tasks": [
{
"type": "cppbuild",
"label": "C/C++: g++.exe 生成活动文件",
"command": "C:\\mingw64\\bin\\g++.exe",
"args": [
"-fdiagnostics-color=always",
"-g",
"${file}",
"-o",
"${fileDirname}\\${fileBasenameNoExtension}.exe"
],
"options": {
"cwd": "${fileDirname}"
},
"problemMatcher": [
"$gcc"
],
"group": {
"kind": "build",
"isDefault": true
},
"detail": "调试器生成的任务。"
},
{
"type": "cppbuild",
"label": "C/C++: cpp.exe 生成活动文件",
"command": "C:\\mingw64\\bin\\cpp.exe",
"args": [
"-fdiagnostics-color=always",
"-g",
"${file}",
"-o",
"${fileDirname}\\${fileBasenameNoExtension}.exe"
],
"options": {
"cwd": "${fileDirname}"
},
"problemMatcher": [
"$gcc"
],
"group": "build",
"detail": "调试器生成的任务。"
}
],
"version": "2.0.0"
}

@ -3,7 +3,8 @@
马誉航、王振宇、王意伟、宋岱瑾
**摘要**:本项目针对什么问题,实现了哪些功能。为了有效地存储和处理何种数据,采用了何种数据结构。为了解决什么问题,采用了什么算法,算法效率如何。针对其他特定需求做了哪些工作。项目的整体效果如何,有何亮点和创新。
**摘要**:随着航空运输和长途旅游业的迅速发展,飞机的需求量在日常生活中逐渐增多,机场航班的起降协调工作也变得越来越重要。而随着时代发展,充满着主观性,不确定性的传统塔楼式人工调度已经无法满足机场的现代化需求,并且在机场规模逐渐增大,飞机班次逐渐增多的今天,使用传统的调度方式也容易出现调度冲突和信息延误等问题。针对这些问题,我们设计了这个模拟机场调度的代码,有效模拟了单位时间内飞机起降的各类数据。同时,为了进一步提高模拟数据的真实性,我们通过生成随机数,使用泊松分布等方法使得模拟结果更具有参考价值。
@ -39,31 +40,42 @@
### 1输入和输出
确定系统的主要输入和输出,如可以设定的参数,数据文件等,明确其主要作用。
### 2数据字典
描述系统中需要处理的所有数据包含的具体信息。例如:
学生 = 学号 + 姓名 + 成绩
### 3数据文件
系统中需要读取xx数据文件以获取xx数据或者需要导出xx数据。举例说明xx数据文件的具体格式。
### 4参数设定
系统开始运行时,需要设置的参数。可以用户手册的形式给出设定参数的过程,如系统提示信息和用户输入等。
### 5XX功能
其他具体功能。
首先简要说明该功能的主要作用,可以用户手册的形式给出系统提示信息、用户输入和系统输出等。
### 6XX功能
其他功能逐项列出。
用户首先输入自主设定的数据,如飞机场运行时间,起飞和降落队列最多容纳的飞机数目,和单位时间内请求起飞和降落的飞机的频数,为程序设定计算的条件和初始值。程序在经过运行后输出根据输入数据所得的,本次运行的统计数据和具体情况,分析各类不同情况下的飞机的数目,跑道空闲时间占比,平均落地时间等用户所需求数据。
### 2参数设定
1.飞机运行的时间。
2.降落和起飞队列最多容纳的飞机数。
3.平均每个单位时间请求降落的飞机数。
4.平均每个单位时间请求起飞的飞机数。
### 3生成随机数功能
rand()会返回一随机数值, 范围在0至RAND_MAX 间。RAND_MAX定义在stdlib.h, 其值为2147483647。
———————————————————————————
| # include <iostream> |
| |
| using namespace std; |
| int main() |
| { |
| for(int i=0;i<10;i++) |
| { |
| cout<<rand()<<endl; |
| } |
|} |
————————————————————————————
### 4泊松分布功能
int Random::poisson(double mean)
{
double limit=exp(-mean);
double product=random_real();
int count=0;
while(product>limit){
count++;
product*=random_real();
}
return count;
}
@ -71,9 +83,9 @@
## 2.1 概要设计
系统划分为几个模块,可以画模块图。
逐个说明每个模块的功能(输入、输出、做什么,这里不写怎么做)
模块一:随机数的生成以及泊松分布的实现;
模块二:将起飞和降落的飞机分为两个队列并且分别处理请求;
模块三使用printf函数输出过程
@ -151,13 +163,54 @@ void bubble_sort(T a[], int n)
# 4. 系统测试
描述测试的思路和方法。比如,先用小数据量进行测试,再用真实数据进行测试。
测试应考虑到输入数据的特殊情况。
给出若干测试用例,包括输入、预期结果、运行结果或是否通过测试。运行结果和预期结果一致,为通过测试。
——————————————————————————————————————————————
|请输入飞机场运行的时间。
|3
|请输入降落和起飞队列最多容纳的飞机数。
|3
|请输入平均每个单位时间请求降落的飞机数。
|3
|请输入平均每个单位时间请求起飞的飞机数。
|3
——————————————————————————————————————————————
——————————————————————————————————————————————
|##0号时间##
|没有飞机降落,也没有飞机起飞,此时跑道为空。
|
|
|##1号时间##
|没有飞机降落,也没有飞机起飞,此时跑道为空。
|0号飞机请求降落并进入降落队伍。
|1号飞机请求降落并进入降落队伍。
|2号飞机请求降落并进入降落队伍。
|3号飞机请求降落但被拒绝了。
|4号飞机请求起飞并进入起飞队伍。
|5号飞机请求起飞并进入起飞队伍。
|6号飞机请求起飞并进入起飞队伍。
|7号飞机请求起飞但被拒绝了。
|8号飞机请求起飞但被拒绝了。
|9号飞机请求起飞但被拒绝了。
|
|
|##2号时间##
|0号飞机降落了等了0个单位时间。
|历经3个单位时间机场停止接收请求。
|
|
|一共收到了10架飞机的请求。
|一共有4架请求降落。其中有3架被接受了1架被拒绝了。
|一共有6架请求起飞。其中有3架被接受了3架被拒绝了。
|
|成功降落了1架还有2架在排队等待降落。
|成功起飞了0架还有3架在排队等待起飞
|
|轨道有66.67%的时间是空闲的。
|降落平均要等0.00个单位时间。
|起飞平均要等0.00个单位时间。
|
|这个机场平均每个单位时间收到1.33个降落请求。
|这个机场平均每个单位时间收到2.00个起飞请求。
————————————————————————————————————————————————————————
# 5. 总结
@ -170,19 +223,17 @@ void bubble_sort(T a[], int n)
成员1
成员2
王振宇:通过本次实践作业,我不但粗浅的了解了泊松分布的含义和使用,对于离散型分布等知识也有了一定的个了解。也更加深入的了解了课堂上的知识,比如结构体和队列的构建与使用。同时经过这次实践作业,我也初步认识了合作的重要性,和程序设计的实践作业不同,本次数据结构的实践作业明显专业性更强,目的性更加的突出,难度也随之增大,对小组中每个人都有一定的挑战,需要小组成员团结合作,各自发挥自己的长处,从代码,排版,数据的搜集和使用等方面发挥不同的作用。总的来说,本次实践作业让我学到了很多。
成员3
成员4
成员5
# 参考文献
列出参考的文献资料,根据情况自行添加。
[1] 严蔚敏, 吴伟民. 数据结构C语言版. 北京: 清华大学出版社, 2007.
[1] CSDN C语言生成符合泊松分布离散型的随机数手写—— 10生万物
[2] CSDN 《数据结构与程序设计》队列 case study ——— airport 模拟机场调度 ——超超超超超级菜
[3] CSDN 【数据结构笔记】 队列的应用——飞机场模拟 ——勇敢琪琪

Loading…
Cancel
Save