terça-feira, 2 de outubro de 2007

INF01202 - Laboratório 6 - Exercício 2

Problema 2:


Ler valores para dois vetores inteiros Vetor1 e Vetor2. Os valores serão fornecidos de forma desordenada, deverão ser todos positivos e maiores que zero e não deverão ser fornecidos valores repetidos internamente a cada vetor.

Concluída a leitura dos dois primeiros vetores, criar um terceiro vetor, VetorDif, com os elementos que existiam em Vetor1 e não existiam em Vetor2 (vetor diferença entre Vetor1 e Vetor2) VetorDif devrerá ser criado de forma contínua, com seus elementos válidos armazenados um após o outro.

Escrever ao final do processamento os três vetores, precedidos cada qual por um cabeçalho indicando de qual vetor se trata. Se o vetor VetorDif for vazio, exibir uma mensagem adequada.


Exemplo de Saída:

Vetor1:

1 3 5 7 9 11 13 15 22 27 2 4 6 8 17 19 ...


Vetor2:

21 23 25 7 9 11 33 13 52 14 1 15 6 8 18 19 ...


VetorDif:

3 5 22 ...



Considerações sobre a implementação:


O programa usa a constante MAX_ELEMENTOS para definir o número máximo de elementos dos três vetores.

Não é possível digitar valores repetidos ou inválidos durante a leitura de Vetor1 e Vetor2.

Para fazer as pesquisas de elementos dentro do vetor é utilizada a Busca Seqüencial, os elementos não são ordenados pelo programa.



Otimizações propostas:


  • Fazer a leitura e ordenar o vetor ao mesmo tempo.

  • Utilizar a Busca Binária para localização de elementos.



Código Fonte: VetorDiferenca.pas

Nenhum comentário: