Ir ao conteúdo
  • Comunicados

    • Gabriel Torres

      Seja um moderador do Clube do Hardware!   12-02-2016

      Prezados membros do Clube do Hardware, Está aberto o processo de seleção de novos moderadores para diversos setores ou áreas do Clube do Hardware. Os requisitos são:   Pelo menos 500 posts e um ano de cadastro; Boa frequência de participação; Ser respeitoso, cordial e educado com os demais membros; Ter bom nível de português; Ter razoável conhecimento da área em que pretende atuar; Saber trabalhar em equipe (com os moderadores, coordenadores e administradores).   Os interessados deverão enviar uma mensagem privada para o usuário @Equipe Clube do Hardware com o título "Candidato a moderador". A mensagem deverá conter respostas às perguntas abaixo:   Qual o seu nome completo? Qual sua data de nascimento? Qual sua formação/profissão? Já atuou como moderador em algo outro fórum, se sim, qual? De forma sucinta, explique o porquê de querer ser moderador do fórum e conte-nos um pouco sobre você.   OBS: Não se trata de função remunerada. Todos que fazem parte do staff são voluntários.
    • DiF

      Poste seus códigos corretamente!   21-05-2016

      Prezados membros do Fórum do Clube do Hardware, O Fórum oferece um recurso chamado CODE, onde o ícone no painel do editor é  <>     O uso deste recurso é  imprescindível para uma melhor leitura, manter a organização, diferenciar de texto comum e principalmente evitar que os compiladores e IDEs acusem erro ao colar um código copiado daqui. Portanto convido-lhes para ler as instruções de como usar este recurso CODE neste tópico:  
Borracha23

C++ Algoritmo para simplificar vetores

Recommended Posts

Preciso fazer um programa que só no começo possui mais de 1000 vetores do mesmo tamanho e do mesmo tipo, com valores fixos. O problema é que isso ocupa um espaço enorme. Assim, eu queria saber se existe alguma forma de compactar esses vetores ao invés de torrar 1000 linhas no algoritmo principal só para eles.

 

Agradeço pela atenção.

  • Curtir 1

Compartilhar este post


Link para o post
Compartilhar em outros sites
41 minutos atrás, Borracha23 disse:

ssim, eu queria saber se existe alguma forma de compactar esses vetores ao invés de torrar 1000 linhas no algoritmo principal só para eles.

Sim! Se chamam laços, funções, etc. Tudo o que for repetições deve ser evitado a todo custo, utilizando os mecanismos que a linguagem lhe oferecer.
E se for armazenar tanta memoria assim talvez deveria utilizar memoria dinâmica.

  • Curtir 1

Compartilhar este post


Link para o post
Compartilhar em outros sites

@Borracha23 você quer dizer que precisa usar 1000 vetores no programa ? e você usaria 1000 linhas sendo uma linha para cada vetor?     pelo jeito esse programa vai ser bem complicado .   mas no lugar de usar esses 1000 vetores você pode usar uma matriz  que ocuparia apenas uma linha,  então se seus vetores tiver 1000 posições cada um, a matriz seria assim :

int matriz[1000][1000];

seria como se fosse assim :

vetor1[1000];
vetor2[1000];
   . 
   .
   .
vetor998[1000];
vetor999]1000];
vetor1000[1000];

e para acessar esses vetores você especifica qual vetor você quer acessar assim :

for(i=0;i<1000;i++){
    a = matriz[0][i];   
}

aqui você acessa o primeiro vetor, e para acessar os outros você muda o número que está no primeiro colchete .
pois o primeiro são as linhas  da matriz, que representam os vetores, e o segundo são as colunas , que representam as posições do vetores,.   assim se você colocar essa linha :

a=matriz[2][9];

significa que você está pegando o valor que está na décima posição do terceiro vetor, pois começa em zero  .

Editado por devair1010
  • Curtir 1

Compartilhar este post


Link para o post
Compartilhar em outros sites

Acho que você confundiu linhas com colunas. São em torno de mil vetores mas com vinte ou trinta valores cada um. E acessar eles não é problema, o problema é onde colocar ou como escrever para que não ocupem tanto espaço.

  • Curtir 1

Compartilhar este post


Link para o post
Compartilhar em outros sites

@Borracha23    então você já estudou sobre matriz ?    pois   se são en torno de mil vetores e cada vetor tem 30 posições então seria assim :

int matriz[1000][30];

então esse 1000 é a quantidade de vetores ,que serão de zero até 999, e o 30 são as trinta posições de cada vetor .

  • Curtir 1

Compartilhar este post


Link para o post
Compartilhar em outros sites
13 minutos atrás, devair1010 disse:

@Borracha23    então você já estudou sobre matriz ?    pois   se são en torno de mil vetores e cada vetor tem 30 posições então seria assim :


int matriz[1000][30];

então esse 1000 é a quantidade de vetores ,que serão de zero até 999, e o 30 são as trinta posições de cada vetor .

Sim, mas o problema é que eu preciso dos valores prontos no algoritmo, porque eles são fixos. A matriz realmente resolve o problema da quantidade de funções, mas eu ainda vou precisar escrever linha por linha dela. É isso que eu quero tentar evitar.

 

PS: Estou escrevendo rápido e sem pensar então eu provavelmente vou acabar escrevendo alguma burrice.

  • Curtir 2

Compartilhar este post


Link para o post
Compartilhar em outros sites

@Borracha23    se você sabe os valores fixos que serão inseridos nos vetores então use um loop  que pode ser um for, assim :

for(j=0;j<1000;j++)   /* aqui é quantidade de vetores */
    for(i=0;i<30;i++){/* aqui a quantidade de posições em cada vetor */
        printf("digite o %d valor do %d vetor ",i+1,j+1);                  
        scanf("%d",& matriz[j][i]);
    }                   

assim você terá que inserir os valores manualmente,   outra forma seria usar um arquivo com os valores fixos e um código para ir pegando os valores e colocando nos vetores .   mas de qualquer forma você teria que digitar esses valores fixos .

  • Curtir 1

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá.

 

12 horas atrás, Borracha23 disse:

Sim, mas o problema é que eu preciso dos valores prontos no algoritmo, porque eles são fixos. A matriz realmente resolve o problema da quantidade de funções, mas eu ainda vou precisar escrever linha por linha dela. É isso que eu quero tentar evitar.

 

 

 

De uma forma ou de outra será necessário importar... tem pelo menos duas formas: ou você copia e cola no código fonte, linha por linha; ou estrutura os dados num arquivo e faz a leitura do arquivo pelo programa em execução.

 

RESUMINDO

 

@Borracha23, qual a origem desses dados? eles estão num arquivo? num site?

  • Curtir 1

Compartilhar este post


Link para o post
Compartilhar em outros sites
1 hora atrás, Simon Viegas disse:

Olá.

 

 

 

 

De uma forma ou de outra será necessário importar... tem pelo menos duas formas: ou você copia e cola no código fonte, linha por linha; ou estrutura os dados num arquivo e faz a leitura do arquivo pelo programa em execução.

 

RESUMINDO

 

@Borracha23, qual a origem desses dados? eles estão num arquivo? num site?

Muito obrigado pessoal, esclareceram o que eu queria saber.

  • Curtir 1

Compartilhar este post


Link para o post
Compartilhar em outros sites
1 hora atrás, Borracha23 disse:

Muito obrigado pessoal, esclareceram o que eu queria saber.

 

Tá! Conseguiu resolver como?

 

No aguardo.

  • Curtir 1

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário






Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações 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

×