Ir para conteúdo
Fórum Script Brasil
  • 0

Sou iniciante na programação em C e preciso saber o que tem de errado no programa


Vnnyh

Pergunta

Tenho que fazer um jogo da velha pra faculdade, e no tabuleiro inicial é preciso de um número de até 9 algarismos, cujo o qual será desmontado (ou quebrado) pegando o resto da divisão dele por 10. Fiz uma matriz 3x3 e dependendo da quantidade de algarismos que for digitada, os "quadradinhos" restantes (no caso de ter menos que 9 algarismos) devem ser preenchidos por zeros, mas se eu digitar um número com 5 ou mais algarismos, o programa imprime sugeira. Por favor me ajudem. Segue o programa (em C):

#include <stdio.h>

int main(){

/*Declaração de variáveis*/

int M[3][3], i=2, j=2, contador=0, tabuleiro, n;

/*Início do Programa*/

printf("Jogo da Velha Dancarina!\n\n");
printf("Tabuleiro inicial: ");
scanf("%d", &tabuleiro);
n=tabuleiro;

while(n>0 && contador<10)
    {
    M[j]=n%10;
    n=n/10;
    j=j-1;
    contador=contador+1;
    if (contador>3){
        i=1;
        j=2;
    }
    if (contador>6){
        i=0;
        j=2;
    }

} /*While*/

    if(contador==0){
     M[0][0]=0, M[0][1]=0, M[0][2]=0, M[1][0]=0, M[1][1]=0, M[1][2]=0, M[2][0]=0, M[2][1]=0, M[2][2]=0;
    }
     if(contador==1){
     M[0][0]=0, M[0][1]=0, M[0][2]=0, M[1][0]=0, M[1][1]=0, M[1][2]=0, M[2][0]=0, M[2][1]=0;
    }
     if(contador==2){
     M[0][0]=0, M[0][1]=0, M[0][2]=0, M[1][0]=0, M[1][1]=0, M[1][2]=0, M[2][0]=0;
    }
     if(contador==3){
     M[0][0]=0, M[0][1]=0, M[0][2]=0, M[1][0]=0, M[1][1]=0, M[1][2]=0;
    }
     if(contador==4){
     M[0][0]=0, M[0][1]=0, M[0][2]=0, M[1][0]=0, M[1][1]=0;
    }
     if(contador==5){
     M[0][0]=0, M[0][1]=0, M[0][2]=0, M[1][0]=0;
    }
     if(contador==6){
     M[0][0]=0, M[0][1]=0, M[0][2]=0;
    }
     if(contador==7){
     M[0][0]=0, M[0][1]=0;
    }
    if(contador==8){
     M[0][0]=0;
    }


printf("%d\n\n\n", contador);
printf(" %d | %d | %d \n", M[0][0], M[0][1], M[0][2]);
printf("---+---+---\n");
printf(" %d | %d | %d \n", M[1][0], M[1][1], M[1][2]);
printf("---+---+---\n");
printf(" %d | %d | %d \n", M[2][0], M[2][1], M[2][2]);


return 0;
} /*MAIN*/

Link para o comentário
Compartilhar em outros sites

0 respostass a esta questão

Posts Recomendados

Até agora não há respostas para essa pergunta

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152k
    • Posts
      651,8k
×
×
  • Criar Novo...