Ir para conteúdo
Fórum Script Brasil
  • 0

João Vitor Muniz Lopes

Pergunta

#include <stdlib.h>
#include  <stdio.h>
/*Dados dois vetores de inteiros pegue o maior elemento do primeiro vetor,
troque o o menor do segundo. Devolva os impares do segundo vetor
*/
	int MaiorVetor1(int v1[],int n1){
		int i,IndMaior=0;
		for(i=0;i<n1;i++){
			if(v1[i]>v1[IndMaior]){
				IndMaior=i;
			}
		}
		return IndMaior;
	}
	int MenorVetor2(int v2[],int n2){
		int i,IndMenor=0;
		for(i=0;i<n2;i++){
			if(v2[i]>v2[IndMenor]){
				IndMenor=i;
			}
		}
		return IndMenor;
	}
	void Troca(int v1[],int v2[],int ima ,int ime){
		int aux;
		aux=v1[ima];
		v1[ima]=v2[ime];
		v2[ime]=aux;
	}	
   int ExtraiImpar(int v2[],int n2,int vimpar[]){
	   int i,ni;
	   for(i=0;i<n2;i++){
		   if(v2[i]%2!=0){
			   vimpar[ni]=v2[i];
			   ni++;
            }
	   }
	   return ni;
   }
   	int Concatena(int vimpar[],int ni,int vres[]){
		int i,j,nvr=0;
		for(i=0;i<ni;i++){
			vres[nvr]=vimpar[i];
			nvr++;
		}
		while(i<ni) {
    	vres[nvr] = vimpar[i];
		nvr++;	
		i++;
        return nvr;
		}
	}
   void printa_vetor(int v[], int n){
   int i;
   for(i = 0;i <n;i++) {
      printf("%d ",v[i]); 
 	 }
   printf("\n");
}
	/*int Concatena(int v1[],int v2[],int n1,int n2){
		int i,j,nvr=0,vres[nvr];
		for(i=0;i<n1;i++){
			vres[nvr]=v1[i];
			nvr++;
		}
		for(j=0;j<n2;j++){
			vres[nvr]=v2[j];
			nvr++;
			}
		for(nvr=0;nvr<(n1+n2);nvr++){
			printf(" %i",vres[nvr]);
		}
	}*/
   int main(){
   int n1,n2,i,ima,ime,*v1,*v2,*vres,*vimpar,ni,co;
   printf("Digite o tamanho do vetor 1:\n");
   scanf("%i",&n1);
   printf("Digite o tamanho do vetor 2:\n");
   scanf("%i",&n2);
	v1=(int*)malloc(n1*sizeof(int));
    v2=(int*)malloc(n2*sizeof(int));
    vimpar=(int*)malloc(n2*sizeof(int));
    vres=(int*)malloc((n2)*sizeof(int));
   printf("Digite os elementos do vetor 1:\n");
   for(i=0;i<n1;i++){
	   scanf("%d",&v1[i]);
   }
   printf("Digite os elementos do vetor 2:\n");
   for(i=0;i<n2;i++){
	   scanf("%d",&v2[i]);
   }
   ima=MaiorVetor1(v1,n1);
   ime=MenorVetor2(v2,n2);
   ni=ExtraiImpar(v2,n2,vimpar); 
   Troca(v1,v2,ima,ime);
   ni=ExtraiImpar(v2,n2,vimpar); 	
   Troca(v1,v2,ima,ime);
   co=Concatena(vimpar,ni,vres);
   printa_vetor(vimpar, ni);
   printa_vetor(vres,co);
   }

 

Link para o comentário
Compartilhar em outros sites

0 respostass a esta questão

Posts Recomendados

Até agora não há respostas para essa pergunta

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...