Ir ao conteúdo
  • Comunicados

    • Gabriel Torres

      Seja um moderador do Clube do Hardware!   12-02-2016

      Prezados membros do Clube do Hardware, Está aberto o processo de seleção de novos moderadores para diversos setores ou áreas do Clube do Hardware. Os requisitos são:   Pelo menos 500 posts e um ano de cadastro; Boa frequência de participação; Ser respeitoso, cordial e educado com os demais membros; Ter bom nível de português; Ter razoável conhecimento da área em que pretende atuar; Saber trabalhar em equipe (com os moderadores, coordenadores e administradores).   Os interessados deverão enviar uma mensagem privada para o usuário @Equipe Clube do Hardware com o título "Candidato a moderador". A mensagem deverá conter respostas às perguntas abaixo:   Qual o seu nome completo? Qual sua data de nascimento? Qual sua formação/profissão? Já atuou como moderador em algo outro fórum, se sim, qual? De forma sucinta, explique o porquê de querer ser moderador do fórum e conte-nos um pouco sobre você.   OBS: Não se trata de função remunerada. Todos que fazem parte do staff são voluntários.
    • DiF

      Poste seus códigos corretamente!   21-05-2016

      Prezados membros do Fórum do Clube do Hardware, O Fórum oferece um recurso chamado CODE, onde o ícone no painel do editor é  <>     O uso deste recurso é  imprescindível para uma melhor leitura, manter a organização, diferenciar de texto comum e principalmente evitar que os compiladores e IDEs acusem erro ao colar um código copiado daqui. Portanto convido-lhes para ler as instruções de como usar este recurso CODE neste tópico:  
Monkeyrafa

Cego em labirinto de vidro em c, e caça palavras em c

Recommended Posts

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

Compartilhar este post


Link para o post
Compartilhar em outros sites

Posta o codigo dentro da box de codigo, porque assim está bugando e sumindo alguns detalhes.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário






Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações 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

×