2025.5.28第一次提交,仿真平台修复bug同步修复

This commit is contained in:
氧原子
2025-05-28 21:51:08 +08:00
parent 9d96af2ff3
commit 14b3d14170
6 changed files with 68 additions and 27 deletions

View File

@@ -11,10 +11,11 @@ using namespace std;
int main()
{
explore(); //使用递归算法构建地图
//~ wall[0][0][0] = 1;
BOTturn(2 - rob_dir);
VWWait();
rob_dir = 2;
explore();
const int mazesize_x = mark.size(); //获取探索结束之后的迷宫的X轴长度
const int mazesize_y = mark[0].size(); //获取探索结束之后的迷宫的Y轴长度
@@ -24,21 +25,29 @@ int main()
array_copy_mark(mazesize_x, mazesize_y, copy_mark); //复制一份mark数组并转换为一维数组便于后续频繁读取提升性能
array_copy_wall(mazesize_x, mazesize_y, copy_wall); //复制一份wall数组并转换为一维数组便于后续频繁读取提升性能
cout << "访问数组打印:" << endl;
output_arr2D(mazesize_x, mazesize_y, copy_mark); //打印地图mark信息
cout << "地图打印:" << endl;
output_arrwall(mazesize_x, mazesize_y, copy_wall); //打印墙壁wall信息
cout << "请输入目标点的X,Y坐标值 用空格隔开并回车" << endl;
cin >> target_x >> target_y;
cout << endl;
int map[mazesize_x * mazesize_y] = {}; //创建最短路径求解地图并初始化为0
array_negative_one(mazesize_x * mazesize_y, map); //将map数组初始化为-1
flood(map, copy_wall); //洪水填充算法
cout << "路径打印:" << endl;
output_arr2D(mazesize_x, mazesize_y, map); //打印map的数组信息
const int len = map[((target_x - 1) * mazesize_y) + (target_y -1)]; //迷宫的终点(人为确定)
int path[len] = {}; //创建最短路径结果地图并初始化为0
build_path(target_x - 1, target_y - 1, len, path, map, copy_wall); //构建出最短路径path数组
drive_path(len, path); //移动到指定目标点
cout << "移动指令打印:" << endl;
output_arrpath(len, path); //打印path数组信息及小车每一步的行驶方向
drive_path(len, path); //移动到指定目标点
}