سلام .
من برنامه ای دارم می نویسم که یک ماتریس nxn میگره که خونه اول و آخرش 0 است و بقیه
خونه ها رو کاربر یا 0 یا 1 به دلخواه میذاره که 1 ها همون دیوارند و 0 ها یعنی مسیر بازه .

حالا من اینو با بازگشتی نوشتم فقط نمیدونم چطور باید نشانه گذاری کرد ... هی دچار لوپ میشه ..


private bool Explore(int row, int col)
{

//if Row And Cols Jumped Out Of Matrix
if (row < 0 | col < 0 | row > r | col > c) { return false; }

//if We Taken To Walls
if (Matrix[row,col]==1)

// if We Taken To Goal
if (row==r && col==c) {return true ;}

//Recurison
if (Explore(row - 1, col)) { return true; } //search up
if (Explore(row + 1, col)) { return true; } //search down
if (Explore(row, col - 1)) { return true; } //search left
if (Explore(row, col + 1)) { return true; } //search right
//if None Of Aboves
return false;
}