Ir ao conteúdo
  • Cadastre-se

Leotanis Leite Moraes

Membro Pleno
  • Posts

    47
  • Cadastrado em

  • Última visita

Tópicos solucionados

  1. O post de Leotanis Leite Moraes em Dúvida Jogo Forca foi marcado como solução   
    Cara, tenho um ex pronto falando neste topico http://forum.clubedohardware.com.br/forums/topic/1090748-d%C3%BAvida-com-c%C3%B3digo/.
     
    Agora de acordo com o seu código, você precisar esvaziar o bufer de teclado antes dos gets (no seu caso o scanf).
    Faz o seguinte, pega o seu codigo e antes de cada scanf, você bota este codigo:
     
    setbuf(stdin,NULL);
     
    O q ele faz?? setbuf é a função para setar valores em algum bufer. Stdin é o teclado, no caso vamos setar o bufer de teclado. Null é o valor correspondente a vazio.
     
    espero ter ajudado.
  2. O post de Leotanis Leite Moraes em Preciso de Ajuda matriz em C [URGENTE] foi marcado como solução   
    então, o programa 1 você faz da seguinte forma: (não fiz tratamento de erro pois não foi pedido no enunciado)
     
    #include <stdio.h> #include <stdlib.h>     int main() {     int lin,col,i,j;     int mata[99][99];       scanf("%d",&lin);              //recolhe os dados do tamanho da matriz     setbuf(stdin,NULL);     scanf("%d",&col);     setbuf(stdin,NULL);       for (i=0;i<lin;i++){                  //para colher os dados da matriz         for (j=0;j<col;j++){             scanf("%d",&mata[j]);             setbuf(stdin,NULL);         }     }         for (i=0;i<lin;i++){       //para imprimir a matriz                 printf("\n");         for (j=0;j<col;j++){             printf(" %d",mata[j]);                      }     }       return 0; }   Para o segundo exercicio, você copia este primeiro, declar mais uma matriz com nome matb, e na parte de imprimir, você substitui o comando printf(" %d",mata[j]); por matb[j]=mata[j]*mata[j];   para o terceiro exercicio, você copia o segundo, declara mais duas matrizes matc e matct, e incrementa com este codigo:           for (i=0;i<lin;i++){                             for (j=0;j<col;j++){             matc[j]=mata[j]+matb[j];        //para criar a matriz c                      }     }  
            for (i=0;i<lin;i++){                             for (j=0;j<col;j++){                        // para criar a transposta de c             matct[j]=matc[j]                      }     }
    então, o programa 1 você faz da seguinte forma: (não fiz tratamento de erro pois não foi pedido no enunciado)
     
    #include <stdio.h> #include <stdlib.h>     int main() {     int lin,col,i,j;     int mata[99][99];       scanf("%d",&lin);              //recolhe os dados do tamanho da matriz     setbuf(stdin,NULL);     scanf("%d",&col);     setbuf(stdin,NULL);       for (i=0;i<lin;i++){                  //para colher os dados da matriz         for (j=0;j<col;j++){             scanf("%d",&mata[j]);             setbuf(stdin,NULL);         }     }         for (i=0;i<lin;i++){       //para imprimir a matriz                 printf("\n");         for (j=0;j<col;j++){             printf(" %d",mata[j]);                      }     }       return 0; }   Para o segundo exercicio, você copia este primeiro, declar mais uma matriz com nome matb, e na parte de imprimir, você substitui o comando printf(" %d",mata[j]); por matb[j]=mata[j]*mata[j];   para o terceiro exercicio, você copia o segundo, declara mais duas matrizes matc e matct, e incrementa com este codigo:           for (i=0;i<lin;i++){                             for (j=0;j<col;j++){             matc[j]=mata[j]+matb[j];        //para criar a matriz c                      }     }  
            for (i=0;i<lin;i++){                             for (j=0;j<col;j++){                        // para criar a transposta de c             matct[j]=matc[j]                      }     }
  3. O post de Leotanis Leite Moraes em Programa simples em c, entregado de pizza foi marcado como solução   
    Este exercicio é o basico da parte de pilha estatica com uma struct. Tenho pronto aqui um exemplo das funções que eu costumo usar para pilha estatica, que fica facim para você adaptar para seu exercicio. So que ao inserir algo na pilha, voce utilisa uma struct em vez de um vetor simples igual no exemplo.
     
    #include <stdio.h> #include <stdlib.h>   int pilha [1000]; int topo,valor,opcao,i,aux; bool programa = true;   void pilha_contruir (){     topo = -1; }   bool pilha_vazia (){     if (topo==-1){         return true;     }     else {         return false;     } }   bool pilha_cheia (){     if (topo==999){         return true;     }     else {         return false;     } }   void inserirpilha (int valor){       if (pilha_cheia()==true){         printf("PILHA ESTA CHEIA");     }     else{         topo=topo+1;         pilha[topo]=valor;         printf("\nVALOR %d INSERIDO COM SUCESSO!",valor);     } }   void retirarpilha (int &valor){     if (pilha_vazia()==true){         printf("\n\nPILHA ESTA VAZIA");     }     else {         valor = pilha[topo];         topo=topo-1;         printf("\n\nO VALOR %d FOI RETIRADO DA PILHA",valor);     } }     int main() {   printf("\033[44m");     printf("PROGRAMA PARA GERIR PILHA ESTATICA");     pilha_contruir();     while (programa=true){     printf("\n\n\n");     printf("\nESCOLHA:");     printf("\nDIGITE 1 PARA INSERIR DADOS NA PILHA");     printf("\nDIGITE 2 PARA RETIRAR VALOR DA PILHA");     printf("\nDIGITE 3 PARA MOSTRAR TAMANHO DA PILHA");     printf("\nDIGITE 4 PARA IMPRIMIR OS VALORES DA PILHA");     printf("\nINFORME A OPCAO DESEJADA: ");     setbuf(stdin,NULL);     scanf("%d",&opcao);     switch (opcao) {     case 1:         printf("\n\n\nINFORME O VALOR QUE DESEJA INSERIR: ");         scanf("%d",&valor);         inserirpilha(valor);         break;     case 2:         retirarpilha(valor);         break;     case 3:         printf("\nA PILHA TEM %d ITENS\n",topo+1);         break;     case 4:         aux=topo;         while (aux>-1){             printf("\n%d",pilha[aux]);             aux=aux-1;         }         break;     }     printf("\n\n"); system("pause"); system("cls");     }     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...

Ebook grátis: Aprenda a ler resistores e capacitores!

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!