关于c++:基于C实现旅行线路设计

拜访【WRITE-BUG数字空间】_[内附残缺源码和文档]

零碎依据危险评估,为旅客设计一条合乎旅行策略的旅行线路并输入,零碎能查问以后时刻旅客所处的地点和状态(停留城市/所在交通工具)。

  1. 试验内容和试验环境形容

1.1 试验内容
城市之间有各种交通工具(汽车、火车和飞机)相连,有些城市之间无奈中转,须要路径直达城市。某旅客于某一时刻向零碎提出旅行要求。思考在以后 COVID-19 疫情环境下,各个城市的危险水平不一样,分为低危险、中危险和高风险三种。零碎依据危险评估,为该旅客设计一条合乎旅行策略的旅行线路并输入;零碎能查问以后时刻旅客所处的地点和状态(停留城市/所在交通工具)。

1.2 环境形容
Windows 10 环境 PC 机;
Microsoft Visual Studio 2019 集成化开发环境;
Qt Creator 4.11.1(Based on Qt 5.14.1) 集成化开发环境;
Qt 运行库(Qt 5.14.2 MinGW 32-bit)

  1. 软件设计
    2.1 数据结构
    City 类(city.h):

class City : public QObject
{
public:

City(string name = "", int number = 0, double risk = 0);
string name; //城市名
int number; //城市序号
QPoint pos; //城市在地图上的地位
double risk; //城市危险值
void add_route(); //为该城市增加时刻表(未应用)
vector<class Transport*> everyday_table; //每日时刻表

signals:

};
Tourist 类(tourist.h):

class Tourist
{
public:

Tourist(City* A = nullptr, City* B = nullptr, int limit = 0, int number = 0);
bool enabled; //是否启用
int number; //旅客序号
int status; //旅客状态
int stlimit; //最早登程工夫
int limit; //最晚达到工夫
void plan_route(int time); //为旅客布局路线
void update_status(int time); //更新旅客信息
City* start; //出发点
City* destination; //目的地
City* nowat; //以后地位
Route plan; //以后布局门路
double risk; //以后旅客所接受的危险值
void dfs(City* at, Route rut, int time); //以后所在位置 路线 以后工夫 工夫限度

signals:

};
Transport 类(transport.h):

class Transport
{
public:

Transport(class City* A = nullptr, class City* B = nullptr, int st = 0, double risk = 0, int cost = 0);
int transportKind; //载具品种
class City* start; //首发站
class City* destination; //终点站
int start_time; //登程工夫
double risk; //危险
int time_cost; //所需工夫

signals:

};
Route 类(route.h):

class Route
{
public:

Route();
vector<City*> via;
vector<int> mid_arrive_time;
vector<int> mid_again_time;
int transportKind;
double risk;
int start_time; //登程工夫
int time_cost; //下一步达到的工夫

signals:

};

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

这个站点使用 Akismet 来减少垃圾评论。了解你的评论数据如何被处理