Exemplo n.º 1
0
void MazeWalker::walkMaze()
{
	move(*m_startPos);
	mazePrint();
	while (!isGoalReached())
	{
		storeValidMoves();
		if (m_isDFS)
		{
			if (m_moveStack.empty())
			{
				break;
			}
			move(m_moveStack.top());
			m_moveStack.pop();
		}
		else
		{
			if (m_moveQueue.empty())
			{
				break;
			}
			move(m_moveQueue.front());
			m_moveQueue.pop();
		}
		mazePrint();
	}
	if (isGoalReached())
	{
		std::cout << '\n' << "Exit found!" << '\n';
	}
	else
	{
		std::cout << '\n' << "No way out!" << '\n';
	}
}
Exemplo n.º 2
0
int main(){
	short mazeMap[WIDTH * HEIGHT];
	mazeSetup(mazeMap);
	mazePrint(mazeMap);
	return 0;
}