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

news2024/11/16 9:44:21

访问【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)
2. 软件设计
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 mid_arrive_time;
vector mid_again_time;
int transportKind;
double risk;
int start_time; //出发时间
int time_cost; //下一步到达的时间

signals:

};在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/505900.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【吐槽贴】项目经理如何进行高效沟通?

“项目最大的风险就是都觉得没有风险。” 这还是跟同行聊天时开玩笑的一句话&#xff0c;最近我却深有体会。一直以为一切正常的项目&#xff0c;最近却接连出了问题&#xff0c;复盘才发现几个关键性问题都出在沟通方面&#xff0c;还一直认为沟通能力是自己的优势。这次主要踩…

使用java-timeseries库,使用arima算法预测时间序列(

项目地址&#xff1a; GitHub - signaflo/java-timeseries: Time series analysis in Java maven&#xff1a; <dependency><groupId>com.github.signaflo</groupId><artifactId>timeseries</artifactId><version>0.4</version> &…

【剖析STL】String

1.什么是STL&#xff1f; 标准模板库&#xff08;Standard Template Library&#xff0c;STL&#xff09;是惠普实验室开发的一系列软件的统称。它是由Alexander Stepanov、Meng Lee和David R Musser在惠普实验室工作时所开发出来的。虽说它主要出现到C中&#xff0c;但在被引…

Dockerfile部署java项目

一、dockerfile展示 将DockerFile 配置文件放到 maven项目目录内&#xff0c;和pom.xml同级。 # Download code FROM bitnami/git:2 AS git RUN mkdir -p /home/app/src RUN git -c http.sslVerifyfalse -C /home/app/src clone -b local https://github.com/test.git# # Bui…

2023年宜昌市中等职业学校技能大赛 “网络搭建与应用”竞赛题-1

2023年宜昌市中等职业学校技能大赛 “网络搭建与应用”竞赛题 一、竞赛内容分布 “网络搭建及应用”竞赛共分二个部分&#xff0c;其中&#xff1a; 第一部分&#xff1a;企业网络搭建部署项目&#xff0c;占总分的比例为50%&#xff1b; 第二部分&#xff1a;企业网络服…

打工人使用ChatGPT的一天!

众所周知&#xff0c;ChatGPT 自去年OpenAI 推出以来&#xff0c;这款 AI 聊天机器人可以说迅速成为了 AI 界的「当红炸子鸡」 作为一名资深的打工人&#x1f477;&#x1f3fb;‍♂️&#xff0c;我们应该怎样利用ChatGPT提高工作效率呢&#xff1f;今天给大家介绍下打工人使…

c++ cuda加速学习笔记

1. 环境配置 (1)显卡驱动下载官网&#xff0c;需要知道自己电脑的显卡类型 搜索链接&#xff1a;https://www.nvidia.com/Download/index.aspx?langzh-cn(2)怎么知道自己的的显卡类型 https://jingyan.baidu.com/article/2a13832888b2a7464a134fef.html 此电脑->管理->…

通过Modbus实现TTS语音全彩声光告警-博灵语音通知终端-网络语音报警灯

背景 目前PLC在工业领域应用广泛&#xff0c;在运行过程中可能会涉及到各种告警。 为了简单快速的实现语音声光告警&#xff0c;本文以大连英仕博科技出品的博灵语音通知终端为例&#xff0c;演示如何通过Modbus TCP协议实现声光告警推送。 播报效果演示 Modbus-博灵语音通知…

Google Play 政策更新重点回顾 (上) | 2023 年 4 月

Google Play 始终如一地为大家打造值得信赖的安全平台&#xff0c;支持大家走向成功。为了让您更及时更清晰地掌握 Google Play 最新政策&#xff0c;我们准备了两篇文章为您详细说明 2023 年 4 月的政策更新内容&#xff0c;以及深度解析。本文是第一篇内容&#xff0c;我们将…

日撸 Java 三百行day46

文章目录 说明day46 快速排序1.基本思路2. 代码 说明 闵老师的文章链接&#xff1a; 日撸 Java 三百行&#xff08;总述&#xff09;_minfanphd的博客-CSDN博客 自己也把手敲的代码放在了github上维护&#xff1a;https://github.com/fulisha-ok/sampledata day46 快速排序 …

计算机网络安全--期末

计算机网络安全绪论 计算机网络实体是什么 计算机网络中的关键设备&#xff0c;包括各类计算机、网络和通讯设备、存储数据的媒体、传输路线…等 典型的安全威胁有哪些 ★ ⋆ \bigstar\star ★⋆ 窃听(敏感信息被窃听)重传(被获取在传过来)伪造(伪造信息发送&#xff09;篡…

kubeadm 部署Kubernetes 集群一主多从集群并完成pod部署

目录 搭建环境准备三台虚拟机&#xff1a; 环境条件限制&#xff1a; 一&#xff0c;关闭交换分区 二&#xff0c;禁用selinux 三&#xff0c;防火墙关闭 四&#xff0c;docker安装 五&#xff0c;设置IPv4 流量传递到 iptables 六&#xff0c;配置k8s的yum源 七&#…

vue3学习三 computed

vue3中的computed 也被封装成了一个组合api , 所以我们使用的时候&#xff0c; 要 import {computed} from “vue” 和vue2样&#xff0c; computed 是有两种书写方式 简写方式和全写方式 <template><div> firstname:<input v-model"firstname" /&g…

【专题连载】基于5G+机器视觉的芯片检测解决方案

基于5G机器视觉的芯片检测解决方案 背景 机器视觉的价值体现在它能为工业生产带来产量的增加和产品质量的提升&#xff0c;并同时降低生产成本&#xff0c;推动了工业生产的快速发展&#xff0c;使工业生产企业真正从中受益。为了进一步压缩生产成本&#xff0c;工业控制的产…

信号与槽机制一

一、信号与槽 1、什么是信号与槽&#xff1f; 信号和槽是用于对象之间的通信&#xff0c;它是Qt的核心机制&#xff0c;在Qt编程中有着广泛的应用。如果想学好Qt&#xff0c;一定要充分掌握信号的槽的概念与使用。 2、信号和槽的代码实例 在Qt中&#xff0c;发送对象、发送的信…

FPGA上的视觉 SLAM

在FPGA开发板上实现基于立体视觉的 SLAM。 绪论 SLAM&#xff08;同步定位和地图绘制&#xff09;在自动驾驶、AGV 和无人机等各种应用中引起了人们的广泛关注。尽管目前有很多优秀的 SLAM 项目可以参考&#xff0c;但是他们的复杂性&#xff08;高性能&#xff09;及依赖性&am…

体验洞察 | 原来它才是最受欢迎的CX指标?

一直以来&#xff0c;企业都在试图追踪他们能否在整个客户旅程中始终如一地提供卓越的客户体验&#xff08;Customer Experience&#xff0c;简称“CX”&#xff09;&#xff0c;并通过多个CX指标&#xff0c;如NPS&#xff08;净推荐值&#xff09;、CSAT&#xff08;客户满意…

简单讲讲UE中的PlayerCameraManager

我们在平时开发中&#xff0c;少不了编写一些逻辑去控制相机&#xff0c;例如俯视角镜头与各个特写镜头的过渡切换&#xff0c;因此了解一些PlayerCameraManager是有必要的。 PlayerCameraManager是UE自带的相机管理组件&#xff0c;本身比较简单&#xff0c;一般需要自行扩展…

长短期记忆网络LSTM(long short-term memory)

递归神经网络 递归神经网络可以解决这个问题。它们是带有循环的神经网络&#xff0c;允许信息保留一段时间。 在上图中&#xff0c;A 代表神经网络主体, xt 是网络输入&#xff0c;ht是网络输出&#xff0c;循环结构允许信息从当前输出传递到下一次的网络输入。 一个递归神经网…

强烈推荐:一款中文AI问答、创作、绘画工具

前言 相信很多人已经听过ChatGPT这款人工智能机器人了&#xff0c;它能够根据用户输入的内容&#xff0c;自动生成智能回复。它使用自然语言处理技术&#xff0c;通过学习大量的文本资料&#xff0c;能够模拟人类的对话行为。它是由OpenAI开发的&#xff0c;一家非常伟大的人工…