Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

alex_dino

vetor

Recommended Posts

Tenho um exercicio que é de vetores, mais estou com um problema na hora de guarda os valores em um vetor....

 

 

Faça 1 programa para criar 2 vetores veta e vetb com 10 numeros inteiros cada e que estejam ordenados crescentemente. Após crie um terceiro vetor vetc também ordenado a partir dos vetores veta e vetb. Ao final do processo, mostre na tela os 3 vetores.

 

obs: Ao criar os vetores veta e vetb, considere que o usuário informará os valores em ordem.

Não é necessário testar condições para este procedimento no programa.

 

 

O vetc deve ser criado após a entrada de dados de veta e vetb e devera ser ordenado a partir da junção dos veta e vetb.

 

 

 

 

Eu fiz ele, mais na parte que tem que ordena está errado, o que devo fazer para que ele guarde certo os valores no vetor c?

 

 

 

# define TAMa 10
# define TAMb 10
# define TAMc 20

#include <stdio.h>
int main (void)
{
	int vetor_a[TAMa],vetor_b[TAMb],vetor_c[TAMc],i=0,cont,pos=0;
	
	for (cont=0;cont<TAMa;cont++)
	{
		printf ("Informe os numeros do vetor A ");
		scanf ("%d",&vetor_a[cont]);
	}
	for (i=0;i<TAMb;i++)
	{
		printf ("Informe os numeros do vetor B ");
		scanf ("%d",&vetor_b[i]);
	}
	
	for (pos=0;pos<TAMc;pos++)
	{
	   if (vetor_a[cont]<vetor_b[i]){
		   cont++;						  
		   vetor_c[pos]=vetor_a[cont];
		   
	   }
	   else{
			  i++;
			  vetor_c[pos]=vetor_b[i];
			  
	   }
	}
	 for (cont=0;cont<TAMa;cont++)
	{
		 printf ("vet a %d ",vetor_a[cont]);
	}
	for (i=0;i<TAMb;i++)
	{
		 printf ("vet b %d ",vetor_b[i]);
	}
	for (pos=0;pos<TAMc;pos++)
	{
		printf ("vet c %d ",vetor_c[pos]);
	}
   
   
	system("pause");
	return (0);
}

Compartilhar este post


Link para o post
Compartilhar em outros sites

Copie todos os itens para o vetorC, e use algum método de ordenação, Bolha por exemplo.

Se você tiver obrigatoriamente que colocar os items ja ordenados, você tem que encontrar o menor do conjunto [vetorA] 'união' [vetorB]

começe por ele, depois encontre o segundo menor.... e assim vai...

 

Quando encontrar um item, você pode mudar o valor para -1, ou algo do tipo. Dessa forma você sempre fará buscas pelo menor valor positivo.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.