Ir ao conteúdo
  • Cadastre-se

dss1757

Membro Júnior
  • Posts

    1
  • Cadastrado em

  • Última visita

posts postados por dss1757

  1. Uma formiga operária caminha aleatoriamente em uma malha 5x5. A caminhada começa no
    quadrado central. A cada passo, a formiga se desloca para um quadrado vizinho de forma
    randômica, mas sem deixar malha. Desta forma, há 2, 3 ou 4 possíveis movimentos a cada passo,
    dependendo da posição da formiga.
    Ao inicio da caminhada, uma semente é colocada em cada quadrado da linha inferior. Se a formiga
    já não estiver carregando uma semente e chegar na linha de baixo que contem uma semente, ele
    começará a carregar esta semente até que, eventualmente, ela chegue na linha de cima. A formigar
    irá depositar a semente no primeiro quadrado vazio da linha superior que ela alcançar.
    Qual é o número esperado de passos até que todas as sementes estejam na linha superior? Responda
    com seis casas decimais.

    image.png.80ed206d0527e4503c374357cef988ef.png

     

    No caso estou tendo alguns problemas para que as sementes que fiquem na parte superior

    e nas restrições que a formiga pode se locomover

    #include<stdio.h>
    #include<stdlib.h>
    
    
    int main(){
        int i,j,mat[5][5],li,co,a;
    
        for(i=0;i<5;i++){
            for(j=0;j<5;j++)
            if(i==4){
                mat[j]=1;
            }else{
                mat[j]=0;
                mat[2][2]=2;
            }
        }
        for(i=0;i<5;i++){
            for(j=0;j<5;j++)
                printf("\t%3d ",mat[j]);
                printf("\n\n");
        }
        do{
        printf("\n\n\t****COORDENADA DA POSICAO QUE A FORMIGA VAI OCULPAR****");
        printf("\n\tLINHA: ");
        scanf("%d",&li);
        printf("\n\tCOLUNA: ");
        scanf("%d",&co);
           for(i=0;i<5;i++){
            for(j=0;j<5;j++)
                if(i==4){
                mat[j]=1;
            }else{
                mat[j]=0;
                mat[li][co]=2;
            }
           }
        for(i=0;i<5;i++){
            for(j=0;j<5;j++)
                printf("\t%3d ",mat[j]);
                printf("\n\n");
        }
        }while(li!=9);
    
    
        return 0;
    }

     

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...