Ir para conteúdo
Fórum Script Brasil

NatinDF

Membros
  • Total de itens

    6
  • Registro em

  • Última visita

Posts postados por NatinDF

  1. aeh Rafael, descupa escrevi errado lá em cima, o que eu precisava não era bem imprimer ele ao contrário, eu precisava era inverter mesmo o vetor. mas eu já resolvi de duas formas diferentes:

    void inverte(int *vetor,int tamanho)
    {
         for(int i=0; i<tamanho/2; i++)
         {
                 int aux=vetor[tamanho-i-1];
                 vetor[tamanho-i-1]=vetor[i];
                 vetor[i]=aux;
         }
    }
    e
    void inverte_A_em_B(int *vetorA, int *vetorB, int tamanho)
    {
         for(int i=0; i<tamanho; i++)
         {
                 vetorB[i]=vetorA[tamanho-i-1];
         }
    }

    mas valeu.

  2. Raphael, pra declarar o tamanho do vetor eu estou usando a função:

    int tamanho_vetor(int tamanho)
    {
         printf("\ninforme o tamanho do vetor: \n");
         scanf("%d",&tamanho);
         return tamanho;
    }

    achei melhor fazer em função porque estou usando em vários procedimentos dentro do mesmo programa, agora então terei que usar dois laços né? um incrementando o vetor original, e outro decrementando o vetor que vai receber a cópia? mas como vou colocar um laço dentro do outro?

  3. Galera eu estou com um problema parecido, preciso imprimir um vetor invertido, mas o tamanho do vetor o usuário é quem vai escolher, e ele vai alimentar o vetor com os números, e o programa tem que inverter. Mas não vejo por onde começar.

    O programa eu vou escrever em C, mas a minha dúvida é só em relação à lógica, então acho que postei no lugar certo.

  4. deixei assim:

    case 3:
               {
                  int tamanho;
                  tamanho=tamanho_vetor(tamanho);
                  int vetor[tamanho],Maior;
                  int resposta=maior(&vetor, tamanho, Maior);  // <- NESTA PARTE
                  printf("o maior numero digitado foi: %d",resposta);
               }

    e o dev retornou:

    cannot convert 'int(*)[((unsigned int)((int)tamanho))]' to 'int*' for argument '1' to 'int maior(int*,int,int)'

  5. erro.jpg

    sempre que tento acessar o case 3 ou o case 4(que são cópias um do outro), aparece a imagem de erro do windows. segue o código:

    #include <cstdlib>
    #include <iostream>
    
    using namespace std;
    ////////////////////////////////////////////////////////////////////////////////
    int tamanho_vetor(int tamanho)
    {
         printf("\ninforme o tamanho do vetor: \n");
         scanf("%d",&tamanho);
         return tamanho;
    }
    ////////////////////////////////////////////////////////////////////////////////
    int busca(int *vetor, int Busca, int tamanho)
    {
       for(int i=0; i<tamanho; i++)
       {
    
               if(Busca == vetor[i])
                        return i; //valor foi localizado no vetor na posição i
       }
       return -1; //valor não localizado no vetor
    }
    ////////////////////////////////////////////////////////////////////////////////
    void  mult_k(int *vetor, int k, int  tamanho)
    {
          for (int i=0; i<tamanho; i++)
          {
              vetor[i]=vetor[i]*k;
          }
          
    }
    ////////////////////////////////////////////////////////////////////////////////
    int maior(int *vetor, int tamanho, int Maior)
    {
        for (int i=0; i<tamanho; i++)
          {
                     if(vetor[i]>Maior)
                     {
                                       Maior=vetor[i];
                     }
          }
          return Maior;
    }
    ////////////////////////////////////////////////////////////////////////////////
    int menor(int *vetor, int tamanho, int Menor)
    {
        for (int i=0; i<tamanho; i++)
          {
                     if(vetor[i]>Menor)
                     {
                                       Menor=vetor[i];
                     }
          }
          return Menor;
    }
    ////////////////////////////////////////////////////////////////////////////////
    int main()
    {
        int op;
        printf("                       feito por Jose Renato da Silva Barros\n");
        printf("\nESCOLHA UM PROCEDIMENTO\n\n 1 - Buscar no vetor\n 2 - Multiplica vetor");
        printf("\n 3 - Maior valor no vetor\n 4 - Menor valor do vetor\n\n ");
        scanf("%d",&op);
    
        switch (op)
          {
            case 1:
              {
                int tamanho;
                tamanho=tamanho_vetor(tamanho);
                int vetor[tamanho], Busca;
                for (int i=0; i<tamanho; i++)
                {
                 printf("\ninforme um valor para a posicao %d: ",i);
                 scanf("%d",&vetor[i]);
                }
                printf("\ninforme o valor a ser buscado: \n");
                scanf("%d",&Busca);
                int resposta=busca(vetor, Busca, tamanho);
                if (resposta != -1)
                printf("o numero %d esta no indice: %d \n",Busca ,resposta);
                else
                printf("o numero %d não foi localizado no vetor.\n",Busca);
              }
            break;
            case 2:    
             {    
              int tamanho;
              tamanho=tamanho_vetor(tamanho);
              int vetor[tamanho],k;
              for (int i=0; i<tamanho; i++)
              {
                  printf("\ninforme um valor para a posicao %d: ",i);
                  scanf("%d",&vetor[i]);
              }
              printf("\ninforme o valor a multiplicar: \n");
              scanf("%d",&k);
    //          mult_k(&vetor, k, tamanho)
             }
           break;  
           case 3:
               {
                  int vetor,tamanho,Maior;
                  int resposta=maior(&vetor, tamanho, Maior);
                  printf("o maior numero digitado foi: %d",resposta);
               }
           break;
           case 4:
               {
                  int vetor,tamanho,Menor;
                  int resposta=menor(&vetor, tamanho, Menor);
                  printf("o menor numero digitado foi: %d",resposta);
               }
           break;
         }
              
         system("PAUSE");
       
       return EXIT_SUCCESS;
    }

    fico muito grato com as colaborações. imagino que seja um problema besta mas não acho.

  6. Bom galera, meu nome é Renato, sou estudante de engenharia elétrica, participo de vários fórums de motociclismo e resolvi participar de algum de programação, e escolhi este por achar o mais organizado e limpo pela rápida visualização que fiz.

    Estão todos de parabéns pelo fórum.

    ABS

    // ainda bem que vocês não conhecem o well por aqui.

×
×
  • Criar Novo...