Ir ao conteúdo
  • Cadastre-se

Monkeyrafa

Membro Júnior
  • Posts

    1
  • Cadastrado em

  • Última visita

Reputação

0
  1. Simplesmente não consigo resolver os problemas abaixo, já tentei de tudo. segue as questões em anexo: Minhas tentativas para a questão 2, que eu não sei por que não estão funcionando. 1 - #include <stdio.h> int main () { int i=0,j=0; int mat[100][100], linhas=0,colunas=0; printf("Defina o numero de linhas do labirinto\n"); scanf("%i", &linhas); printf("Defina o numero de colunas do labirinto\n"); scanf("%i", &colunas); printf("Defina valores entre:\n 0:posições possiveis\n 2:paredes \n 3:saidas,so existem nas laterais do labirinto\n"); for (i=0;i<linhas;i++) { for(j=0;j<colunas;j++) { printf("Posicao: linha %i / coluna %i\n",i,j); scanf("%i",mat[j]); } } printf(" Escolha a posicao inicial do cego\n Linha:\n"); scanf("%i",&i); printf("Coluna\n"); scanf("%i",&j); printf("Posicao inical: [%i][%i]\n",i,j); while (mat[j]!=3) { if ((mat[i-1][j]==0 || mat[i-1][j]==3)&& i<linhas && j<colunas && i>=0 && j>=0) { mat[j]=1; i--; printf("Andou para linha %i coluna %i\n", i,j); } else { if ((mat[i-1][j+1]==0 || mat[i-1][j+1]==3)&& i<linhas && j<colunas && i>=0 && j>=0) { mat[j]=1; i--; j++; printf("Andou para linha %i coluna %i\n", i,j); } else { if ((mat[j+1]==0 || mat[j+1]==3)&& i< linhas && j< colunas && i>=0 && j>=0) { mat[j]=1; j++; printf("Andou erro para linha %i coluna %i\n", i,j); } else { if ((mat[i+1][j+1]==0 || mat[i+1][j+1]==3)&& i<linhas && j<colunas && i>=0 && j>=0) { mat[j]=1; i++; j++; printf("Andou para linha %i coluna %i\n", i,j); } else { if ((mat[i+1][j]==0 || mat[i+1][j]==3)&& i<linhas && j<colunas && i>=0 && j>=0) { mat[j]=1; i++; printf("Andou para linha %i coluna %i\n", i,j); } else { if ((mat[i+1][j]==0 || mat[i+1][j]==3)&& i<linhas && j<colunas && i>=0 && j>=0) { mat[j]=1; i++; printf("Andou para linha %i coluna %i\n", i,j); } else { if ((mat[i+1][j-1]==0 || mat[i+1][j-1]==3)&& i<linhas && j<colunas && i>=0 && j>=0) { mat[j]=1; i++; j--; printf("Andou para linha %i coluna %i\n", i,j); } else { if ((mat[j-1]==0 || mat[j-1]==3)&& i<linhas && j<colunas && i>=0 && j>=0) { mat[j]=1; j--; printf("Andou para linha %i coluna %i\n", i,j); } else { if ((mat[i-1][j-1]==0 || mat[i-1][j-1]==3)&& i<linhas && j<colunas && i>=0 && j>=0) { mat[j]=1; j--; i--; printf("Andou para linha %i coluna %i\n", i,j); } else { printf("Por falta de movimentos, o cego morreu!\n"); } } } } } } } } } } if (mat[j]==3) { printf("VITORIA!"); } return 0; } Desde já agradeço a ajuda! Trabalho_02_VE2.pdf

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...