segunda-feira, 9 de novembro de 2009

achar caminho em labirinto 2: entrada 3: saida 1 :caminho possivel 0: parede

int percorer(int x, int y, int matrix[][10])
{
if((x >= 0 && x < 10)&&(y >= 0 && y < 10))
{
if(matrix[x][y] == 3){printf("\n%d ,%d",x,y);return 1;}



if(matrix[x][y] == 0||matrix[x][y]>2){return 0;}
else{
matrix[x][y] = 0;

if(percorer(x + 1, y, matrix) == 1){
            
printf("\n %d ,%d",x,y);
return 1;}

if(percorer(x, y + 1, matrix) == 1){
printf("\n %d ,%d",x,y);
return 1;}

if(percorer(x - 1, y, matrix) == 1){
printf("\n %d ,%d",x,y);
return 1;}

if(percorer(x, y - 1, matrix) == 1){
printf("\n %d ,%d",x,y);
return 1;}

}}
else
return 0;
}


2000
1110
0010
0013

2 comentários:

  1. o que seriam o x e y na sua função?

    ResponderExcluir
  2. é a posiçao na matriz , no caso desse trabalho era uma 10X10 no formato mostrado em escala menor , x e y iniciais sao a pisiçao inicial do numero 2 ou seja a entrada do labirinto .

    ResponderExcluir