main.cpp
//文件中的格式为 前两位数字代表地图 (高度与宽度) 然后两位是 (起点坐标) 然后两位是(终点坐标)
//地图上如果是0代表不能走 1代表能走
// 真人认知算法
#define FILENAME "map.txt"
#include "declear.h"
#include <stdlib.h>
#include <iostream>
#include <Windows.h>
using namespace std;
using namespace mg;
struct mapHW {
int high;
int wide;
};
struct Coor {
int x;
int y;
};
int dirction;//1 2 3 4
void Goto(Coor pos) {
COORD coor;
coor.X = pos.x;
coor.Y = pos.y;
HANDLE hand = GetStdHandle(STD_OUTPUT_HANDLE);
SetConsoleCursorPosition(hand, coor);
}
int main(void) {
Coor coorBegin,//起始点坐标
coorEnd,//终点坐标
coorNow;//现在的坐标
Person man;//申请人物
mapHW maphw;//存储地图高度宽度信息
Coordinate CoorTemp;
FILE * fp;//文件指针
if ( fopen_s(&fp, FILENAME, "r")) {
cout << "地图文件无法开启!" << endl;
return 0;
}
fscanf_s(fp, "%d %d %d %d %d %d", &maphw.high, &maphw.wide,&coorBegin.x,&coorBegin.y,&coorEnd.x,&coorEnd.y);//读取地图初始数据
Map map_Mg(maphw.high, maphw.wide); //地图对象申请
CoorTemp.setX(coorBegin.x);
CoorTemp.setY(coorBegin.y);
map_Mg.setBegin(CoorTemp);//设置地图开始
CoorTemp.setX(coorEnd.x);
CoorTemp.setY(coorEnd.y);
map_Mg.setEnd(CoorTemp);//设置地图终止位置
//-------------------------------------------------------------------------------------------地图初始化
for (int i = 0; i < maphw.wide +