• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

cibersoft

Tabuada

12 mensagens neste tópico

#include <stdio.h>
#include <stdlib.h>

int aleat(void)
{
    int s;
    srand(time(NULL));
    s=rand()%10;
    return s; 
}

int PedeDados(void)
{
    int tabu;
    printf("\tBem vindo ao programa -----> T A B U A D A \n\n");
    printf("\n\n");
    printf("Qual a Tabuada que quer calcular?__");
    scanf("%d",&tabu);     
}
int main(int argc, char *argv[])
{
PedeDados();
  system("PAUSE");	
  return 0;
}

Estou  a tentar fazer uma tabuada que seja interactiva com o utilizador, ou seja, o utilizador pede a tabuada, o programa faz a tabuada e pede o resultado ao utilizador e diz se acertou ou errou, isto com a função random que vai gerar dentro da tabuada pedida multiplicações aleatórias, dando no fim o total de certas e erradas.

e tambem vai ter uma parte que diz ajuda e ele ao carregar na ajuda o programa da-lhe a tabuada completa..

O código em cima é só uma introdução, preciso de uma ajudinha.

Obrigado

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

#include <stdio.h>
#include <stdlib.h>

char ch;

int aleat(void)
{
    int s;
    srand(time(NULL));
    s=rand()%10;
    return s; 
}


int tabuada1(void)
{
    int i ,j,result,answ=0,certas=0,erradas=0;
                      for (i=1;i<=1;++i)
                      for(j=1;j<=10;++j)
                      {
                      result=i*j;
                      do
                      {
                      printf("\n\n");
                      printf("Qual e o resultado %d X %d=",i,j);
                      scanf("%d",&answ);
                                        if(answ!=result)
                                        {
                                            erradas++ ;           
                                                        printf("\n");
                                        printf("ERRADO!!!! TENTE DE NOVO\n\n");  
                                        }
                                        else 
                                        {
                                             certas++;
                                             } 
                                             

}
while (answ !=result);

      
}
printf("\n");
printf("Erradas = %d\n\n",erradas);
printf("Certas = %d\n\n",certas);
do
                                        {
                                             printf("\t\t\t\t*** Deseja Continuar ***\n\n ");
                                             scanf("%s",&ch);
                                             if (ch== 's'|| ch == 'S')
                                             {
                                             system("cls");
                                             main();
                                             }
                                             else{
                                               printf("\t\t\t**** Muito OBRIGADO Pela Participação****\n\n");
                                                  }
}
while(ch !='n'&& ch!= 'N');
} 


int tabuada2(void)
{
    int i ,j,result,answ,certas=0,erradas=0;
                      for (i=2;i<=2;++i)
                      for(j=1;j<=10;++j)
                      {
                      result=i*j;
                      do
                      {
                      printf("\n\n");
                      printf("Qual e o resultado %d X %d=",i,j);
                      scanf("%d",&answ);
                      
                                        if(answ!=result)
                                        {
                                            erradas++ ;           
                                                        printf("\n");
                                        printf("ERRADO!!!! TENTE DE NOVO\n\n");
                                        
                                        }
                                        else{
                                             certas++;
                                             
                                             } 
                                             

}
while (answ !=result);

      
}
printf("\n");
printf("Erradas = %d\n\n",erradas);
printf("Certas = %d\n\n",certas); 
do
                                        {
                                             printf("\t\t\t\t*** Deseja Continuar ***\n\n ");
                                             scanf("%s",&ch);
                                             if (ch== 's'|| ch == 'S')
                                             {
                                             system("cls");
                                             main();
                                             }
                                             else{
                                                  printf("\t\t\t**** Muito OBRIGADO Pela Participação****\n\n");
                                                  }
}
while(ch !='n' && ch!= 'N');
}


int tabuada3(void)
{
    int i ,j,result,answ,certas=0,erradas=0;
                      for (i=3;i<=3;++i)
                      for(j=1;j<=10;++j)
                      {
                      result=i*j;
                      do
                      {
                      printf("\n\n");
                      printf("Qual e o resultado %d X %d=",i,j);
                      scanf("%d",&answ);
                      
                                        if(answ!=result)
                                        {
                                            erradas++ ;           
                                                        printf("\n");
                                        printf("ERRADO!!!! TENTE DE NOVO\n\n");
                                        
                                        }
                                        else{
                                             certas++;
                                             
                                             } 
                                             

}
while (answ !=result);

      
}
printf("\n");
printf("Erradas = %d\n\n",erradas);
printf("Certas = %d\n\n",certas); 
do
                                        {
                                             printf("\t\t\t\t*** Deseja Continuar ***\n\n ");
                                             scanf("%s",&ch);
                                             if (ch== 's'|| ch == 'S')
                                             {
                                             system("cls");
                                             main();
                                             }
                                             else{
                                                  printf("\t\t\t**** Muito OBRIGADO Pela Participação****\n\n");
                                                  }
}
while(ch !='n' && ch!= 'N');
}


int tabuada4(void)
{
    int i ,j,result,answ,certas=0,erradas=0;
                      for (i=4;i<=4;++i)
                      for(j=1;j<=10;++j)
                      {
                      result=i*j;
                      do
                      {
                      printf("\n\n");
                      printf("Qual e o resultado %d X %d=",i,j);
                      scanf("%d",&answ);
                      
                                        if(answ!=result)
                                        {
                                            erradas++ ;           
                                                        printf("\n");
                                        printf("ERRADO!!!! TENTE DE NOVO\n\n");
                                        
                                        }
                                        else{
                                             certas++;
                                             
                                             } 
                                             

}
while (answ !=result);

      
}
printf("\n");
printf("Erradas = %d\n\n",erradas);
printf("Certas = %d\n\n",certas); 
do
                                        {
                                             printf("\t\t\t\t*** Deseja Continuar ***\n\n ");
                                             scanf("%s",&ch);
                                             if (ch== 's'|| ch == 'S')
                                             {
                                             system("cls");
                                             main();
                                             }
                                             else{
                                                  printf("\t\t\t**** Muito OBRIGADO Pela Participação****\n\n");
                                                  }
}
while(ch !='n' && ch!='N');
}


int tabuada5(void)
{
    int i ,j,result,answ,certas=0,erradas=0;
                      for (i=5;i<=5;++i)
                      for(j=1;j<=10;++j)
                      {
                      result=i*j;
                      do
                      {
                      printf("\n\n");
                      printf("Qual e o resultado %d X %d=",i,j);
                      scanf("%d",&answ);
                      
                                        if(answ!=result)
                                        {
                                            erradas++ ;           
                                                        printf("\n");
                                        printf("ERRADO!!!! TENTE DE NOVO\n\n");
                                        
                                        }
                                        else{
                                             certas++;
                                             
                                             } 
                                             

}
while (answ !=result);

      
}
printf("\n");
printf("Erradas = %d\n\n",erradas);
printf("Certas = %d\n\n",certas); 
do
                                        {
                                             printf("\t\t\t\t*** Deseja Continuar ***\n\n ");
                                             scanf("%s",&ch);
                                             if (ch== 's'|| ch == 'S')
                                             {
                                             system("cls");
                                             main();
                                             }
                                             else{
                                                  printf("\t\t\t**** Muito OBRIGADO Pela Participação****\n\n");
                                                  }
}
while(ch !='n' && ch!= 'N');
}

int tabuada6(void)
{
    int i ,j,result,answ,certas=0,erradas=0;
                      for (i=6;i<=6;++i)
                      for(j=1;j<=10;++j)
                      {
                      result=i*j;
                      do
                      {
                      printf("\n\n");
                      printf("Qual e o resultado %d X %d=",i,j);
                      scanf("%d",&answ);
                      
                                        if(answ!=result)
                                        {
                                            erradas++ ;           
                                                        printf("\n");
                                        printf("ERRADO!!!! TENTE DE NOVO\n\n");
                                        
                                        }
                                        else{
                                             certas++;
                                             
                                             } 
                                             

}
while (answ !=result);

      
}
printf("\n");
printf("Erradas = %d\n\n",erradas);
printf("Certas = %d\n\n",certas); 
}
int tabuada7(void)
{
    int i ,j,result,answ,certas=0,erradas=0;
                      for (i=7;i<=7;++i)
                      for(j=1;j<=10;++j)
                      {
                      result=i*j;
                      do
                      {
                      printf("\n\n");
                      printf("Qual e o resultado %d X %d=",i,j);
                      scanf("%d",&answ);
                      
                                        if(answ!=result)
                                        {
                                            erradas++ ;           
                                                        printf("\n");
                                        printf("ERRADO!!!! TENTE DE NOVO\n\n");
                                        
                                        }
                                        else{
                                             certas++;
                                             
                                             } 
                                             

}
while (answ !=result);

      
}
printf("\n");
printf("Erradas = %d\n\n",erradas);
printf("Certas = %d\n\n",certas); 
do
                                        {
                                             printf("\t\t\t\t*** Deseja Continuar ***\n\n ");
                                             scanf("%s",&ch);
                                             if (ch== 's'|| ch == 'S')
                                             {
                                             system("cls");
                                             main();
                                             }
                                             else{
                                                  printf("\t\t\t**** Muito OBRIGADO Pela Participação****\n\n");
                                                  }
}
while(ch !='n' && ch!= 'N');
}

int tabuada8(void)
{
    int i ,j,result,answ,certas=0,erradas=0;
                      for (i=8;i<=8;++i)
                      for(j=1;j<=10;++j)
                      {
                      result=i*j;
                      do
                      {
                      printf("\n\n");
                      printf("Qual e o resultado %d X %d=",i,j);
                      scanf("%d",&answ);
                      
                                        if(answ!=result)
                                        {
                                            erradas++ ;           
                                                        printf("\n");
                                        printf("ERRADO!!!! TENTE DE NOVO\n\n");
                                        
                                        }
                                        else{
                                             certas++;
                                             
                                             } 
                                             

}
while (answ !=result);

      
}
printf("\n");
printf("Erradas = %d\n\n",erradas);
printf("Certas = %d\n\n",certas);
do
                                        {
                                             printf("\t\t\t\t*** Deseja Continuar ***\n\n ");
                                             scanf("%s",&ch);
                                             if (ch== 's'|| ch == 'S')
                                             {
                                             system("cls");
                                             main();
                                             }
                                             else{
                                                 printf("\t\t\t**** Muito OBRIGADO Pela Participação****\n\n");
                                                  }
}
while(ch !='n' && ch!= 'N');
} 

int tabuada9(void)
{
    int i ,j,result,answ,certas=0,erradas=0;
                      for (i=9;i<=9;++i)
                      for(j=1;j<=10;++j)
                      {
                      result=i*j;
                      do
                      {
                      printf("\n\n");
                      printf("Qual e o resultado %d X %d=",i,j);
                      scanf("%d",&answ);
                      
                                        if(answ!=result)
                                        {
                                            erradas++ ;           
                                                        printf("\n");
                                        printf("ERRADO!!!! TENTE DE NOVO\n\n");
                                        
                                        }
                                        else{
                                             certas++;
                                             
                                             } 
                                             

}
while (answ !=result);

      
}
printf("\n");
printf("Erradas = %d\n\n",erradas);
printf("Certas = %d\n\n",certas); 
do
                                        {
                                             printf("\t\t\t\t*** Deseja Continuar ***\n\n ");
                                             scanf("%s",&ch);
                                             if (ch== 's'|| ch == 'S')
                                             {
                                             system("cls");
                                             main();
                                             }
                                             else{
                                                  printf("\t\t\t**** Muito OBRIGADO Pela Participação****\n\n");
                                                  }
}
while(ch !='n' && ch!='N');
}


int tabuada10(void)
{
    
    int i ,j,result,answ,certas=0,erradas=0;
                      for (i=10;i<=10;++i)
                      for(j=1;j<=10;++j)
                      {
                      result=i*j;
                      do
                      {
                      printf("\n\n");
                      printf("Qual e o resultado %d X %d=",i,j);
                      scanf("%d",&answ);
                      if (answ==1000)
                      tabu();
                                        if(answ!=result)
                                        {
                                            erradas++ ;           
                                                        printf("\n");
                                        printf("ERRADO!!!! TENTE DE NOVO\n\n");
                                        
                                        }
                                        else{
                                             certas++;
                                             
                                             } 
                                            


}
while (answ !=result);

      
}
printf("\n");
printf("\t\tErradas = %d\n\n",erradas);
printf("\t\tCertas = %d\n\n",certas); 
do
                                        {
                                             printf("\t\t\t\t*** Deseja Continuar ***\n\n ");
                                             scanf("%s",&ch);
                                             if (ch== 's'|| ch == 'S')
                                             {
                                             system("cls");
                                             main();
                                             }
                                             else{
                                                  printf("\t\t\t**** Muito OBRIGADO Pela Participação****\n\n");
                                                  }
}
while(ch !='n'&& ch!='N');
}
int tabu(void)
{
int i,j;
    for (i=1;i<=10;++i)
    for (j=1;j<=10;++j)
printf("\t\t%d X %d = %d \n\n",i,j,i*j);
do
                                        {
                                             printf("\t\t\t\t*** Deseja Continuar ***\n\n ");
                                             scanf("%s",&ch);
                                             if (ch== 's'|| ch == 'S')
                                             {
                                             system("cls");
                                             main();
                                             }
                                             else{
                                                  printf("\t\t\t**** Muito OBRIGADO Pela Participação****\n\n");
                                                  }
}
while(ch !='n'&& ch!='N');
}

int main(int argc, char *argv[])
{
  int op;
    printf("\t\t\t** P R O G R A M A *** T A B U A D A **\n");
    printf("\n\n");
    printf("\t\t\tQual a Tabuada que quer calcular?");
    printf("\n\n");
    printf("\t\t\t\t-----------------\n");
    printf("\t\t\t\t|\t1:\t|\n");
    printf("\t\t\t\t|\t2:\t|\n");
    printf("\t\t\t\t|\t3:\t|\n");
    printf("\t\t\t\t|\t4:\t|\n");
    printf("\t\t\t\t|\t5:\t|\n");
    printf("\t\t\t\t|\t6:\t|\n");
    printf("\t\t\t\t|\t7:\t|\n");
    printf("\t\t\t\t|\t8:\t|\n");
    printf("\t\t\t\t|\t9:\t|\n");
    printf("\t\t\t\t|\t10:\t|\n");
    printf("\t\t\t\t|\t11:AJUDA\t|\n");
    printf("\t\t\t\t-----------------\n\n");
    printf("\t\t\tEscolha uma das tabuadas: ") ;     
    scanf("%d",&op);
                switch (op)
                {
                       case 1:  system("cls");
                            tabuada1();           
                            break;  
                       case 2:  system("cls");  
                            tabuada2();                          
                            break;
                       case 3:  system("cls");
                            tabuada3();
                            break;
                       case 4:  system("cls");
                            tabuada4();
                            break;
                       case 5:  system("cls");
                            tabuada5();
                            break;
                       case 6:  system("cls");
                            tabuada6();
                            break;
                       case 7:  system("cls");
                            tabuada7();
                            break;
                       case 8:  system("cls");
                            tabuada8();
                            break;
                       case 9:  system("cls");
                            tabuada9();
                            break;
                       case 10: system("cls");
                            tabuada10();
                            break ;
                       case 11: system("cls");
                            tabu();
                            break;     
                            default: 
                                printf("\n");      
                                printf("\t\t*************************************************");
                                printf("\n");
                                printf("\t\tEssa opcao nao e valida e o programa vai encerrar");
                                printf("\n");
                                printf("\t\t*************************************************\n\n");    
                                    
                                   
}
system("pause");	
  return 0;
}

Ainda não está muito bem, mas já foi um bom esforço.

Digam onde posso melhorar.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

passar o numero da tabuada como parametro? poupas MUITAS linhas de codigo.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Aqui fica uma versão reduzida mas funcional, onde te podes basear:

Já agora, não invoques a função main() a meio do programa, não é uma boa prática.

#include <stdio.h>
#include <stdlib.h>
#include <time.h>

char ch;

int aleat(void)
{
    int s;
    srand(time(NULL));
    s = rand() % 10;
    return s;
}

int tabuada(int n)
{
    int j, result, answ = 0, certas = 0, erradas = 0;

    for (j = 1; j <= 10; ++j)
    {
        result = n * j;

        do
        {
            printf("Qual e o resultado de %d X %d? ", n, j);
            scanf("%d", &answ);

            if (answ != result)
            {
                erradas++;
                printf("ERRADO!!!! TENTE DE NOVO\n");
            }
            else
            {
                certas++;
            }
        }
        while (answ != result);
    }

    printf("\n");
    printf("Erradas = %d\n", erradas);
    printf("Certas = %d\n", certas);

    do
    {
        printf("\t\t\t\t*** Deseja Continuar ***\n\n ");
        scanf("%s", &ch);

        if (ch == 's' || ch == 'S')
        {
            main();
        }
        else
        {
            printf("\t\t\t**** Muito OBRIGADO Pela Participação****\n\n");
        }
    }
    while (ch != 'n' && ch != 'N');
}


int main(int argc, char *argv[])
{
    int op = 0;

    printf("\t\t\t** P R O G R A M A *** T A B U A D A **\n");
    printf("\n\n");
    printf("Qual a tabuada que quer calcular? ");

    scanf("%d", &op);

    tabuada(op);

    return 0;
}

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Usas varias vezes isto no teu programa:

    system("cls");   

O que faz este system(" "); ?

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Usas varias vezes isto no teu programa:

    system("cls");   

O que faz este system(" "); ?

system("programa") faz uma chamada ao sistema, ou seja, neste caso, chama o programa cls (clear screen - programa da linha de comandos de sistemas Microsoft).

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

:o isto nao e' c ansi pois nao ?

Penso que faz parte do standard ANSI C, mas não é portável.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

A função "system" faz parte do ANSI, os parâmetros que lhe são passados são independentes de standards, dependem sim se o sistema operativo os suporta ou não.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

#include <stdio.h>
#include <stdlib.h>

char ch;

int aleat(void)
{
    int s;
    srand(time(NULL));
    s=rand()%10;
    return s; 
}


int tabuada1(void)
{
    int i ,j,result,answ=0,certas=0,erradas=0;
                      for (i=1;i<=1;++i)
                      for(j=1;j<=10;++j)
                      {
                      result=i*j;
                      do
                      {
                      printf("\n\n");
                      printf("Qual e o resultado %d X %d=",i,j);
                      scanf("%d",&answ);
                                        if(answ!=result)
                                        {
                                            erradas++ ;           
                                                        printf("\n");
                                        printf("ERRADO!!!! TENTE DE NOVO\n\n");  
                                        }
                                        else 
                                        {
                                             certas++;
                                             } 
                                             

}
while (answ !=result);

      
}
printf("\n");
printf("Erradas = %d\n\n",erradas);
printf("Certas = %d\n\n",certas);
do
                                        {
                                             printf("\t\t\t\t*** Deseja Continuar ***\n\n ");
                                             scanf("%s",&ch);
                                             if (ch== 's'|| ch == 'S')
                                             {
                                             system("cls");
                                             main();
                                             }
                                             else{
                                               printf("\t\t\t**** Muito OBRIGADO Pela Participação****\n\n");
                                                  }
}
while(ch !='n'&& ch!= 'N');
} 


int tabuada2(void)
{
    int i ,j,result,answ,certas=0,erradas=0;
                      for (i=2;i<=2;++i)
                      for(j=1;j<=10;++j)
                      {
                      result=i*j;
                      do
                      {
                      printf("\n\n");
                      printf("Qual e o resultado %d X %d=",i,j);
                      scanf("%d",&answ);
                      
                                        if(answ!=result)
                                        {
                                            erradas++ ;           
                                                        printf("\n");
                                        printf("ERRADO!!!! TENTE DE NOVO\n\n");
                                        
                                        }
                                        else{
                                             certas++;
                                             
                                             } 
                                             

}
while (answ !=result);

      
}
printf("\n");
printf("Erradas = %d\n\n",erradas);
printf("Certas = %d\n\n",certas); 
do
                                        {
                                             printf("\t\t\t\t*** Deseja Continuar ***\n\n ");
                                             scanf("%s",&ch);
                                             if (ch== 's'|| ch == 'S')
                                             {
                                             system("cls");
                                             main();
                                             }
                                             else{
                                                  printf("\t\t\t**** Muito OBRIGADO Pela Participação****\n\n");
                                                  }
}
while(ch !='n' && ch!= 'N');
}


int tabuada3(void)
{
    int i ,j,result,answ,certas=0,erradas=0;
                      for (i=3;i<=3;++i)
                      for(j=1;j<=10;++j)
                      {
                      result=i*j;
                      do
                      {
                      printf("\n\n");
                      printf("Qual e o resultado %d X %d=",i,j);
                      scanf("%d",&answ);
                      
                                        if(answ!=result)
                                        {
                                            erradas++ ;           
                                                        printf("\n");
                                        printf("ERRADO!!!! TENTE DE NOVO\n\n");
                                        
                                        }
                                        else{
                                             certas++;
                                             
                                             } 
                                             

}
while (answ !=result);

      
}
printf("\n");
printf("Erradas = %d\n\n",erradas);
printf("Certas = %d\n\n",certas); 
do
                                        {
                                             printf("\t\t\t\t*** Deseja Continuar ***\n\n ");
                                             scanf("%s",&ch);
                                             if (ch== 's'|| ch == 'S')
                                             {
                                             system("cls");
                                             main();
                                             }
                                             else{
                                                  printf("\t\t\t**** Muito OBRIGADO Pela Participação****\n\n");
                                                  }
}
while(ch !='n' && ch!= 'N');
}


int tabuada4(void)
{
    int i ,j,result,answ,certas=0,erradas=0;
                      for (i=4;i<=4;++i)
                      for(j=1;j<=10;++j)
                      {
                      result=i*j;
                      do
                      {
                      printf("\n\n");
                      printf("Qual e o resultado %d X %d=",i,j);
                      scanf("%d",&answ);
                      
                                        if(answ!=result)
                                        {
                                            erradas++ ;           
                                                        printf("\n");
                                        printf("ERRADO!!!! TENTE DE NOVO\n\n");
                                        
                                        }
                                        else{
                                             certas++;
                                             
                                             } 
                                             

}
while (answ !=result);

      
}
printf("\n");
printf("Erradas = %d\n\n",erradas);
printf("Certas = %d\n\n",certas); 
do
                                        {
                                             printf("\t\t\t\t*** Deseja Continuar ***\n\n ");
                                             scanf("%s",&ch);
                                             if (ch== 's'|| ch == 'S')
                                             {
                                             system("cls");
                                             main();
                                             }
                                             else{
                                                  printf("\t\t\t**** Muito OBRIGADO Pela Participação****\n\n");
                                                  }
}
while(ch !='n' && ch!='N');
}


int tabuada5(void)
{
    int i ,j,result,answ,certas=0,erradas=0;
                      for (i=5;i<=5;++i)
                      for(j=1;j<=10;++j)
                      {
                      result=i*j;
                      do
                      {
                      printf("\n\n");
                      printf("Qual e o resultado %d X %d=",i,j);
                      scanf("%d",&answ);
                      
                                        if(answ!=result)
                                        {
                                            erradas++ ;           
                                                        printf("\n");
                                        printf("ERRADO!!!! TENTE DE NOVO\n\n");
                                        
                                        }
                                        else{
                                             certas++;
                                             
                                             } 
                                             

}
while (answ !=result);

      
}
printf("\n");
printf("Erradas = %d\n\n",erradas);
printf("Certas = %d\n\n",certas); 
do
                                        {
                                             printf("\t\t\t\t*** Deseja Continuar ***\n\n ");
                                             scanf("%s",&ch);
                                             if (ch== 's'|| ch == 'S')
                                             {
                                             system("cls");
                                             main();
                                             }
                                             else{
                                                  printf("\t\t\t**** Muito OBRIGADO Pela Participação****\n\n");
                                                  }
}
while(ch !='n' && ch!= 'N');
}

int tabuada6(void)
{
    int i ,j,result,answ,certas=0,erradas=0;
                      for (i=6;i<=6;++i)
                      for(j=1;j<=10;++j)
                      {
                      result=i*j;
                      do
                      {
                      printf("\n\n");
                      printf("Qual e o resultado %d X %d=",i,j);
                      scanf("%d",&answ);
                      
                                        if(answ!=result)
                                        {
                                            erradas++ ;           
                                                        printf("\n");
                                        printf("ERRADO!!!! TENTE DE NOVO\n\n");
                                        
                                        }
                                        else{
                                             certas++;
                                             
                                             } 
                                             

}
while (answ !=result);

      
}
printf("\n");
printf("Erradas = %d\n\n",erradas);
printf("Certas = %d\n\n",certas); 
}
int tabuada7(void)
{
    int i ,j,result,answ,certas=0,erradas=0;
                      for (i=7;i<=7;++i)
                      for(j=1;j<=10;++j)
                      {
                      result=i*j;
                      do
                      {
                      printf("\n\n");
                      printf("Qual e o resultado %d X %d=",i,j);
                      scanf("%d",&answ);
                      
                                        if(answ!=result)
                                        {
                                            erradas++ ;           
                                                        printf("\n");
                                        printf("ERRADO!!!! TENTE DE NOVO\n\n");
                                        
                                        }
                                        else{
                                             certas++;
                                             
                                             } 
                                             

}
while (answ !=result);

      
}
printf("\n");
printf("Erradas = %d\n\n",erradas);
printf("Certas = %d\n\n",certas); 
do
                                        {
                                             printf("\t\t\t\t*** Deseja Continuar ***\n\n ");
                                             scanf("%s",&ch);
                                             if (ch== 's'|| ch == 'S')
                                             {
                                             system("cls");
                                             main();
                                             }
                                             else{
                                                  printf("\t\t\t**** Muito OBRIGADO Pela Participação****\n\n");
                                                  }
}
while(ch !='n' && ch!= 'N');
}

int tabuada8(void)
{
    int i ,j,result,answ,certas=0,erradas=0;
                      for (i=8;i<=8;++i)
                      for(j=1;j<=10;++j)
                      {
                      result=i*j;
                      do
                      {
                      printf("\n\n");
                      printf("Qual e o resultado %d X %d=",i,j);
                      scanf("%d",&answ);
                      
                                        if(answ!=result)
                                        {
                                            erradas++ ;           
                                                        printf("\n");
                                        printf("ERRADO!!!! TENTE DE NOVO\n\n");
                                        
                                        }
                                        else{
                                             certas++;
                                             
                                             } 
                                             

}
while (answ !=result);

      
}
printf("\n");
printf("Erradas = %d\n\n",erradas);
printf("Certas = %d\n\n",certas);
do
                                        {
                                             printf("\t\t\t\t*** Deseja Continuar ***\n\n ");
                                             scanf("%s",&ch);
                                             if (ch== 's'|| ch == 'S')
                                             {
                                             system("cls");
                                             main();
                                             }
                                             else{
                                                 printf("\t\t\t**** Muito OBRIGADO Pela Participação****\n\n");
                                                  }
}
while(ch !='n' && ch!= 'N');
} 

int tabuada9(void)
{
    int i ,j,result,answ,certas=0,erradas=0;
                      for (i=9;i<=9;++i)
                      for(j=1;j<=10;++j)
                      {
                      result=i*j;
                      do
                      {
                      printf("\n\n");
                      printf("Qual e o resultado %d X %d=",i,j);
                      scanf("%d",&answ);
                      
                                        if(answ!=result)
                                        {
                                            erradas++ ;           
                                                        printf("\n");
                                        printf("ERRADO!!!! TENTE DE NOVO\n\n");
                                        
                                        }
                                        else{
                                             certas++;
                                             
                                             } 
                                             

}
while (answ !=result);

      
}
printf("\n");
printf("Erradas = %d\n\n",erradas);
printf("Certas = %d\n\n",certas); 
do
                                        {
                                             printf("\t\t\t\t*** Deseja Continuar ***\n\n ");
                                             scanf("%s",&ch);
                                             if (ch== 's'|| ch == 'S')
                                             {
                                             system("cls");
                                             main();
                                             }
                                             else{
                                                  printf("\t\t\t**** Muito OBRIGADO Pela Participação****\n\n");
                                                  }
}
while(ch !='n' && ch!='N');
}


int tabuada10(void)
{
    
    int i ,j,result,answ,certas=0,erradas=0;
                      for (i=10;i<=10;++i)
                      for(j=1;j<=10;++j)
                      {
                      result=i*j;
                      do
                      {
                      printf("\n\n");
                      printf("Qual e o resultado %d X %d=",i,j);
                      scanf("%d",&answ);
                      if (answ==1000)
                      tabu();
                                        if(answ!=result)
                                        {
                                            erradas++ ;           
                                                        printf("\n");
                                        printf("ERRADO!!!! TENTE DE NOVO\n\n");
                                        
                                        }
                                        else{
                                             certas++;
                                             
                                             } 
                                            


}
while (answ !=result);

      
}
printf("\n");
printf("\t\tErradas = %d\n\n",erradas);
printf("\t\tCertas = %d\n\n",certas); 
do
                                        {
                                             printf("\t\t\t\t*** Deseja Continuar ***\n\n ");
                                             scanf("%s",&ch);
                                             if (ch== 's'|| ch == 'S')
                                             {
                                             system("cls");
                                             main();
                                             }
                                             else{
                                                  printf("\t\t\t**** Muito OBRIGADO Pela Participação****\n\n");
                                                  }
}
while(ch !='n'&& ch!='N');
}
int tabu(void)
{
int i,j;
    for (i=1;i<=10;++i)
    for (j=1;j<=10;++j)
printf("\t\t%d X %d = %d \n\n",i,j,i*j);
do
                                        {
                                             printf("\t\t\t\t*** Deseja Continuar ***\n\n ");
                                             scanf("%s",&ch);
                                             if (ch== 's'|| ch == 'S')
                                             {
                                             system("cls");
                                             main();
                                             }
                                             else{
                                                  printf("\t\t\t**** Muito OBRIGADO Pela Participação****\n\n");
                                                  }
}
while(ch !='n'&& ch!='N');
}

int main(int argc, char *argv[])
{
  int op;
    printf("\t\t\t** P R O G R A M A *** T A B U A D A **\n");
    printf("\n\n");
    printf("\t\t\tQual a Tabuada que quer calcular?");
    printf("\n\n");
    printf("\t\t\t\t-----------------\n");
    printf("\t\t\t\t|\t1:\t|\n");
    printf("\t\t\t\t|\t2:\t|\n");
    printf("\t\t\t\t|\t3:\t|\n");
    printf("\t\t\t\t|\t4:\t|\n");
    printf("\t\t\t\t|\t5:\t|\n");
    printf("\t\t\t\t|\t6:\t|\n");
    printf("\t\t\t\t|\t7:\t|\n");
    printf("\t\t\t\t|\t8:\t|\n");
    printf("\t\t\t\t|\t9:\t|\n");
    printf("\t\t\t\t|\t10:\t|\n");
    printf("\t\t\t\t|\t11:AJUDA\t|\n");
    printf("\t\t\t\t-----------------\n\n");
    printf("\t\t\tEscolha uma das tabuadas: ") ;     
    scanf("%d",&op);
                switch (op)
                {
                       case 1:  system("cls");
                            tabuada1();           
                            break;  
                       case 2:  system("cls");  
                            tabuada2();                          
                            break;
                       case 3:  system("cls");
                            tabuada3();
                            break;
                       case 4:  system("cls");
                            tabuada4();
                            break;
                       case 5:  system("cls");
                            tabuada5();
                            break;
                       case 6:  system("cls");
                            tabuada6();
                            break;
                       case 7:  system("cls");
                            tabuada7();
                            break;
                       case 8:  system("cls");
                            tabuada8();
                            break;
                       case 9:  system("cls");
                            tabuada9();
                            break;
                       case 10: system("cls");
                            tabuada10();
                            break ;
                       case 11: system("cls");
                            tabu();
                            break;     
                            default: 
                                printf("\n");      
                                printf("\t\t*************************************************");
                                printf("\n");
                                printf("\t\tEssa opcao nao e valida e o programa vai encerrar");
                                printf("\n");
                                printf("\t\t*************************************************\n\n");    
                                    
                                   
}
system("pause");	
  return 0;
}

Ainda não está muito bem, mas já foi um bom esforço.

Digam onde posso melhorar.

com tantas linhas mais valia fazer printf("1*1=1\n1*2=2"); etc

xD no gozo

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Boas,

Que tal criares uma função int tabuada(int num) do que 9 funções que fazem a mesma coisa?

Outra sugestão:

Fazeres um define para o system("cls"); do que estares sempre a fazer a mesma coisa, pelo menos poupas caracteres.

Quando fazes printf's que fazem a mesma coisa excepto mudar um numero, fazeres isso num ciclo while com uma variavel que é o numero que muda.

É sempre bom associar o nosso código a um makefile, por isso sugeria que fizesses um makefile que te desse para o output a tabuada do 1 ao 9 e através de um diff

te comparasse com um ficheiro que tivesse as tabuadas todas, para teres realmente a certeza que nao tens nenhuma surpresa desagradavel quando encontrares um erro

numa delas.

Cumps.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora