⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 交通咨询.txt

📁 提供对城市信息的编辑
💻 TXT
📖 第 1 页 / 共 2 页
字号:
 }

}

输出没有列车或飞机从城市v0到v1;

 }

 

 

·         求城市v0,v1之间的最少时间算法的伪码描述如下:

        TimeDispose( )

{for(v=0;v<城市个数;v++)

         {城市v还未求得最少时间;

          *(D+v)=城市v0到v的最少时间;

          将城市v的路径设置为空;

          if(*(D+v)<INFINITY)

           将城市v0和v加入到城市v的路径中;

         }

         城市v0到城市v0的最少时间为0;

         城市v0设为已求得最少时间;

         for(i=1;i<城市个数;v++)

         {m=INFINITY;

          for(w=0;w<城市个数;w++)

           if(城市w未求得最少时间)

            if(*(D+w)<m)

            {v=w;

             m=*(D+w);

            }

if(v等于v1)

{根据城市v的路径输出从城市v0到城市v1所需经过的城市及路线;

 输出最少时间v1;

  返回;

}

else

{将城市v设为已求得最少时间;

 for(w=0;<G.vexnum;w++)

  if(城市w未求得最少时间并且从城市v到w有路径)

  {保存城市w原来的路径;

将城市w的路径设为城市v的路径并在最后加入城市w;

   利用时间树求出从城市v0城市w的最少时间及路径;

   if(*(D+w)>从城市v0到城市w的最少时间)

    *(D+w)=从城市v0到城市w的最少时间;

   else

    将城市w的路径还原;

  }

}

         }

        }

        输出没有列车或飞机从城市v0到v1;

       }

 

六.测试分析
   按照附录中的测试数据,得出如下测试、分析结果:

1.       操作员管理功能.

1>. 当我们从键盘输入有关图的顶点及弧的信息后,用显示图的函数验证,DOS中显示的图的信息与从键盘输入的信息相同,表明交通系统可以从键盘正确输入信息.

2>. 我们事先建立了有关图的3 个文本文件(包括city.txt,plan.txt,train.txt),在交通系统程序中,选择从文本文件输入图的信息后,用显示操作验证,表明文本文件的内容可以正确调入图的结构体中,说明交通系统可以从文本文件中读取信息.

3>. 当从键盘或文本文件初始化交通图后,测试增加或删除城市结点,增加或删除航班或列车弧,以上各功能都正确.

2.  交通咨询功能.

   1>. 火车情况.

        1.1>.最少费用.

a.       两地间无中转且有多辆火车.

北京----à郑州

输出结果为:

旅行路线是:  

乘坐NO.27列车车次在13:15 从 Beijing 到zhengzhou.

最少旅行费用是78元.     

                    而若选择NO.41 则花费为80 元.  

                  结果正确.

 

b.       两地之间无中转达且只有一辆火车.

西安----à武汉

输出结果为:

   旅行路线是:  

乘坐NO.218列车车次在1:34从xi’an到wuhan.

                                   最少旅行费用是178.00 元.     

                                    结果正确.

c.        两地之间有中转.

昆明----à北京

输出结果为:

   旅行路线是:  

乘坐NO.323列车车次在16.:31从kunming到Guangzhou.

                                   乘坐NO.59列车车次在3:39从Guangzhou 到shanghai.

乘坐NO.41列车车次在0:35从shanghai 到zhengzhou.

乘坐NO.27列车车次在13:42 从zhengzhou 到Beijing.

最少旅行费用是462 元.    

                             而若选择 昆明---à武汉---à兰州---à北京 则花费为506 元.

   若选择 昆明---à武汉---à西安---à郑州---à北京 则花费为472 元.

结果正确.

 

          1.2>最短时间.

     a. 两地间无中转且有多辆火车.

北京----à郑州

输出结果为:

旅行路线是:  

乘坐NO.41列车车次在13:15从Beijing 到zhengzhou.

最少旅行时间是7:57.    

                    结果正确.

b.两地之间无中转达且只有一辆火车.

乌鲁木齐----à兰州 

输出结果为:

   旅行路线是:  

乘坐No.371列车车次在0:35从wulumuqi 到lanzhou.

                                   最少旅行时间是10:48.   

                                    结果正确.

c.       两地之间有中转.

广州----à兰州 

输出结果为:

   旅行路线是:  

乘坐NO.59列车车次在3:39从guangzhou到shanghai.

                                   乘坐NO.41列车车次在0:35从shanghai到zhengzhou.

乘坐NO.41列车车次在9.40从zhengzhou到Beijing.

乘坐NO.134列车车次在19.24从Beijing到lanzhou.

最少旅行时间是54:49.     

        结果正确.

  

               1.3>.最短周转次数.

 

                      a. 两地可直达且有中转.

                             昆明---à广州

    输出结果为:

旅行路线是:  

乘坐NO.323列车车次在16:31从kunming到guangzhou.

最少旅行中转次数是0次 .

                  而若选择 昆明---à武汉---à长沙---à兰州 则 结果为3.

结果正确.

                      b.两地间有多条中转路径.

                          昆明---à上海

   输出结果为:

旅行路线是:  

乘坐NO.323列车车次在16:31从kunming 到guangzhou.

乘坐NO.59列车车次在3:39从guangzhou 到shanghai.

最少旅行总转次数是1次 .

                  而若选择 昆明---à武汉---à西安---à郑州---à上海 则 结果为4.

结果正确.

 

2.飞机情况.

 

            2.1>.两地无直达.

           兰州---à武汉

                      输出结果为:

                       不存在飞机航班从lanzhou到wuhan.

 

           2.2>.两地无直达.

                     拉萨---à昆明

                     a.最少费用:

                 输出结果为:

乘坐NO.173飞机航班在10:20 从lasa 到kunming.

                      最少旅行费用是830 元.

                      结果正确.

b.最短时间:

输出结果为:

乘坐NO.173 飞机航班在10:20 从lasa 到kunming.

                      最少旅行时间是1:25.

结果正确.

                      c.最短中转次数.

输出结果为:

乘坐NO.173 飞机航班在10:20 从lasa 到kunming.

                      最少旅行中转次数是0次.

结果正确.

 

            2.3>两地可中转.

                    广州----à北京

                a.最少费用:  

输出结果为:

乘坐NO.2323飞机航班在10:15 从Guangzhou 到xi’an.

                      乘坐NO.210 飞机航班在12:35 从xi’an 到beijing.

最少旅行费用是2250 元.

                    结果正确.

 

b.最短时间:

输出结果为:

   乘坐NO.2323 飞机航班在10:15 从Guangzhou 到xi’an.

                            乘坐NO.210 飞机航班在12:35 从xi’an 到beijing.

最少旅行时间是4:00.

 

    结果正确.

                      c.最短中转次数.

输出结果为:

乘坐NO.2323 飞机航班在10:15 从Guangzhou 到xi’an.

                      乘坐NO.210 飞机航班在12:35从xi’an 到beijing.

最少旅行中转次数是1次.

结果正确.

3.打印

  打印结果正确;

4.退出

能正确退出

 

七.使用说明
      1.运行程序,首先出现主界面。主界面包括四个选项:选项一:管理员管理界面,选择该项可进行城市交通系统的管理,具体使用说明见说明2;选项二:用户咨询界面,选择该项可进行最少费用、最少时间、最少中转次数的决策咨询,具体使用见说明7;选项三:显示城市交通系统程序,选择该项可显示城市交通系统的所有信息,包括城市、航班和列车车次;选项四:退出程序,选择该项将退出程序。

      2.管理员管理界面包括5个选项:选项一:初始化城市交通系统界面,可进行城市交通系统的初始化,具体使用见说明3;选项二:城市编辑界面,可进行城市的增加和删除,具体使用见说明4;选项三:航班编辑界面,可进行航班的增加和删除,具体使用见说明5;选项四:列车车次编辑界面,可进行列车车次的增加和删除,具体使用见说明6;选项五:返回上一级菜单,可返回主界面。

      3.初始化城市交通系统界面包括两个选项:选项一:通过键盘初始化城

         市交通系统,选择该项后程序将给出输入说明,按输入说明用户需逐

步输入城市、航班、列车车次的信息来对城市交通系统初始化。在输入航班和列车信息时需注意两点:a.所输入的航班和列车的发车时间均在同一天。b.若发车时间小于到达时间,则说明列车在同一天到达,若发车时间大于到达时间,则说明列车在次日达到。飞机航班也是如此;选项二:通过文档初始化城市交通系统,选择该项可用文档进行初始化,但文档必须存在于程序的同一目录下,且必须包含CITY,PLANE,TRAIN三个文本文档,否则程序将提示出错。

      4.城市编辑界面包括两个选项:选项一:增加城市,可在城市交通系统中加入新的城市,若用户输入的是已有的城市名,程序将提示出错;选项二:删除城市,可在城市交通系统中删除城市,用户必须输入一个已有的城市名,否则程序提示出错。     

      5.航班编辑界面包括两个选项:选项一:增加航班,可在两个城市之间

         新增航班,选择该项后用户需输入新增航班的编号,起始城市,到达

城市及费用、时间等信息;选项二,删除航班,可删除两个城市间的

一条航班,选择该项后用户需输入要删除航班的编号,起始城市,到

达城市的信息,若航班不存在或编号、城市输入有误,程序将提示错

误。

      6.列车车次编辑界面包括两个选项:选项一:增加列车车次,可在两个

城市之间新增列车车次,选择该项后用户需输入新增列车的编号,起

始城市,到达城市及费用、时间等信息;选项二,删除列车车次,可

删除两个城市间的一条列车车次,选择该项后用户需输入要删除车次

的编号,起始城市,到达城市的信息,若列车车次不存在或编号、城

市输入有误,程序将提示错误。

      7.用户咨询界面包括四个选项:选项一:最少费用咨询;选项二:最少时间咨询;选项三:最少中转次数咨询;选项三:返回上级菜单,可返回主界面。选择选项一、二、三都要求用户输入咨询信息,包括起始城市,到达城市和交通工具。输入完毕后城市提示用户是否确认,若不确认则要求用户重新输入咨询信息,若确认则给出用户所需的最优决策信息。

      

八.附录:测试数据
                      航班时刻表

  

机  号                      
 出 发 地 
 到 达 地
 出发时间
 到达时间
 费  用  
 
6320
 北京

上海
 上海

北京
 16:20

18:00   
 17:25

19:05
 680元
 
2104
 北京

乌鲁木齐
 乌鲁木齐

  北京
 8:00

10:45
 9:55

11:40
 1150元
 
201
   北京

  西安
   西安

  北京
 15:25

12:35
 17:00

14:15
 930元
 
2323
   西安

广州
   广州

  西安
 7:15

10:15
 9:35

11:35
 1320元
 
173
   拉萨

  昆明
   昆明

拉萨
 10:20

12:35
 11:45

14:00
 830元
 
3304
   拉萨

  武汉
   武汉

拉萨
 14:15

16:25
 15:45

17:55
 890元
 
82
   乌鲁木齐

    昆明
   昆明

乌鲁木齐  
 9:30

13:05
 12:15

15:50
 1480元
 
4723
   武汉

广州
  广州

 武汉 
 7:05

11:25
 8:45

13 :05
 810元
 

 

          

                     列车时刻表

车 次
 出 发 地 
 到 达 地
 出发时间
 到达时间
 车   费
 
27
 北京

郑州

西安

郑州
  郑州

 西安

郑州

北京

 
 13:15

21:24

05:41

13:42
 21:12

05:13

13:30

21:39
   78元

  82元

82元

78元
 
41
  北京

 郑州

 上海

 郑州
  郑州

上海

郑州

北京
 7:11

15:20

00:35

09:40
 15:08

00:13

09:28

17:37
   90元

  100元

  100元

90元
 
59
  上海

广州
  广州

 上海
 08:20

03:39
 03:16

22:53
   182元
 
134
  兰州

 北京
  北京

 兰州
 03:52

19:24
 18:56

10:28
   162元
 
323
  广州

 昆明
  昆明

 广州
 06:18

16:31
 16:14

02:27
   102元
 
873
  武汉

 昆明
  昆明

 武汉
 07:13

21:42
 21:17

11:46
 134元
 
116
  武汉

 长沙
  长沙

 武汉
 9:36

18:54
 18:32

03:48

 
 98元
 
373
  长沙

 广州
  广州

 长沙
 13:15

00:35
 00:15

11:35
 116元
 
 

747
 兰州

武汉
 武汉

兰州
 17:41

15:13
 14:47

12:19
 210元
 
371
  兰州

乌鲁木齐
  乌鲁木齐

  兰州
 11:42

00:35
 23:54

11:23
 114元
 
218
 武汉

西安
  西安

 武汉
 18:50

01:34
 11:51

18:35
 178元
 

 

 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -