Ir ao conteúdo
  • Cadastre-se

Bianca Regan

Membro Júnior
  • Posts

    4
  • Cadastrado em

  • Última visita

posts postados por Bianca Regan

  1. falta um laço de repetição para comparar sempre o nome "atual", com o próximo, até onde o vetor está preenchido(com a variavel soma). 

    Exemplo, você tem 3 registros apenas dentro do vetor, os laços de repetição irão de 0 até 3, e não até o final total

    da sua capacidade(100). E uma maneira de otimizar seu código e deixá-lo mais leve.

    para dar um exemplo, com um cadastro bem simples só de nomes: 

    Citação

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

    struct dados {
       char  nome[30];
    };

       int  main() {      
                
          dados vet[100];
          int op=0,soma=0,i,j;
          char temp[30];
                       
    while(op!=3){
                      
          printf("\n==============MENU==================\n");            
          printf("1-Cadastrar Pessoa: \n");                    
          printf("2-Ordenar por Nome: \n");      
          printf("3-Sair\n\n\n");
          scanf("%d",&op);
         
          if(op==1){ 
          printf("informe nome:");
          fflush(stdin);   
          fgets(vet[soma].nome,30,stdin);
          fflush(stdin);                
          soma ++;
          system("cls");}
             
                
        if(op==2){
        printf("=================================\n");
        printf("Ordenando por nome");       
                  
        //ordena
         for(i = 1; i < soma; i++){
             for (j = 0; j < soma-1; j++){
                           
                  if(strcmp(vet[j].nome,vet[j+1].nome) > 0){
                    strcpy(temp,vet[j].nome);
                     strcpy(vet[j].nome,vet[j+1].nome);
                     strcpy(vet[j+1].nome,temp);}                               
               }      
             }
                          
         //imprime                   
          for(i=0;i<soma;i++){ 
          printf("\n");   
          printf("nome = %s\n",vet.nome);}}
                         
        if(op==3){
        printf("Encerrando Programa...\n");
        system("pause");        
        exit(0);} 

      }// fim while
    }// fim main
     

     

     

    • Curtir 1
  2. Oi pessoal! Sou nova no fórum. a professora de Algoritmos e Estrutura de Dados me passou uma lista de exercícios com funções e este foi o único que não consegui resolver, me ajudem por favor!

    OBS:. NÃO precisam me dar solução pronta, só me ajudem a entender como chegar nela, pois tentei de tudo e nem um parãmetro consegui elaborar :(

    Citação

     

    Escreva uma função em C/C++ que receba dois números inteiros, positivos, e determine o produto dos mesmos, utilizando o seguinte método de multiplicação: Dividir, sucessivamente, o primeiro número por 2, até que se obtenha 1 como quociente; Paralelamente, dobrar, sucessivamente, o segundo número; Somar os números da segunda coluna que tenham um número ímpar na primeira coluna. O total obtido é o produto procurado.

    Exemplo: 9 x 6
    9 6 => 6
    4 12
    2 24
    1 48 => + 48
    54

     

     

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

 

GRÁTIS: ebook Redes Wi-Fi – 2ª Edição

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!