public bool Solve_Maze(int X_Pos, int Y_Pos)
{
bool Move = false;
//Checking if the position isnt on the finish
if (maze_board[X_Pos,Y_Pos] == 'e')
{
Move = true;
maze_board[X_Pos,Y_Pos] = '+';
return Move;
}
// Check for a wall
if (maze_board[X_Pos, Y_Pos] == '1')
return false;
if (maze_board[X_Pos, Y_Pos] == 'X')
return false;
maze_board[X_Pos, Y_Pos] = 'X';
Move = Solve_Maze(X_Pos + 1, Y_Pos);
Move = Solve_Maze(X_Pos, Y_Pos + 1);
Move = Solve_Maze(X_Pos - 1, Y_Pos);
Move = Solve_Maze(X_Pos, Y_Pos - 1);
maze_board[X_Pos, Y_Pos] = '+';
return Move;
}
Это кусок кода, который дает мне ошибкуя получаю индекс из оценки точности и не знаю, почему
if (maze_board[X_Pos,Y_Pos] == 'e')
Я полный новичок, когда речь идет о программировании и было вид брошенного в глубокий конец с университетским назначением, поэтому любая помощь была бы очень признательна
Добро пожаловать в StackOverflow. Прочтите и следуйте инструкциям по отправке в справочной документации. [Минимальный, полный, проверяемый пример] (http://stackoverflow.com/help/mcve) применим здесь. Мы не можем эффективно помочь вам, пока вы не разместите свой код (который вы сделали, а не минимально) и точно опишите проблему. Включите все сообщение об ошибке - особенно обратную трассировку (показывающую конкретную строку сбоя). – Prune
Смотрите этот прекрасный [debug] (https://ericlippert.com/2014/03/05/how-to-debug-small-programs/) блог для справки. Среди прочего, начните с вставки печати или двух, которые будут отслеживать значения ** X_Pos ** и ** Y_Pos **. – Prune
Какая строка вашего кода выдает индекс из связанного исключения? Трудно пройти весь код. Быть конкретной. – Prabu