DEV Community

loading...

Manipulações em Estruturas Homogêneas - Vetores.

Lucas Aranha
Student of CS. Science enthusiast and i like procedural languages.
・2 min read

Vetores são grandes aliados quando o assunto é armazenamento e tratamento de dados homogêneos. Há varias formas de preencher, armazenar, percorrer e organizar seu conteúdo.

Veremos a seguir uma forma de extrair informações de vetores.

Como poderíamos após termos lido dois vetores, obter um terceiro vetor com a intersecção deles?
Exemplo: Dado um vetor A[5] = {7, 2, 4, 6, 8} e um outro vetor B[3] = {8, 12, 2}. Obtermos como saída o vetor C[2] = {2, 8}.

É simples. Você pode simplesmente escolher um dos vetores e utiliza-lo para comparar com os elementos do outro. E não, não importa qual é o maior, o número de comparações será o mesmo.
A grande sacada do exercício estará dentro do seu laço de comparação.
Alt Text

Uma parte do seu programa deve se preocupar em realizar a comparação de um elemento do vetor, com todos os elementos do outro, dessa forma:
Alt Text

Dito isso, devemos observar alguns parâmetros que estarão inseridos no código, mais precisamente, na variável que ficará responsável por essas comparações.
Uma possibilidade é, quando estiver lendo ambos vetores, criar variáveis que guardem o seu tamanho e que posteriormente no seu código, sirvam de “pontos de parada”.

Pense da seguinte forma, cada i do vetor A fará N comparações antes de seguir ao elemento seguinte.
No nosso exemplo, o A[i] será comparado com B[i] até B[i-1], ou seja, percorrerá todo o vetor. A repetição só deve ser encerrada quando o primeiro índice de um vetor for comparado com todos do outro a fim de encontrar uma igualdade.
Se essa condição for satisfeita, então o vetor é incrementado com o conteúdo.

No final dessas comparações, o vetor C terá os elementos {2, 8}, como na imagem a seguir:
Alt Text

E assim chegamos ao resultado esperado! Espero ter ajudado você, até mais!

Discussion (0)

Forem Open with the Forem app