Ir ao conteúdo
  • Cadastre-se

C interseção entre os dois vetores


Posts recomendados

preciso de ajuda no seguinte exercício:

OBS: o primeiro vetor está imprimindo certinho, porém o segundo e o terceiro ta saindo uns números nada a ver no vetor. alguém que possa me ajudar por favor?

 

Faça um programa que leia dois vetores de 10 elementos. Crie um vetor que seja
a interseção entre os dois vetores, ou seja, armazene apenas os números que estão
em ambos os vetores.

 

segue meu código:

 

#include <stdio.h>


int main (){

    int vet1[10], vet2[10], vet3[10], i;
    
    printf("Digite 10 valores para o vetor 1:\n");
    
    for(i=0; i<10; i++){
        scanf("%i", &vet1);
    }
    printf("Digite 10 valores para o vetor 2:\n");
    
    for(i=0; i<10; i++){
        scanf("%i", &vet2);
    }
    
    for(i=0; i<10; i++){
        vet3[i*2] = vet1;
    }
    
    for(i=0; i<10; i++){
        vet3[i*2+1] = vet2;
    }
    
    printf("Vetor 1: ");
    for(i=0; i<10; i++){
        printf("%i", vet1);
    }
   
    printf("\n");
    
    printf("Vetor 2: ");
    for(i=0; i<10; i++){
        printf("%i", vet2);
    }
    
    printf("\n");
    
    printf("Vetor 3: ");
    for(i=0; i<10; i++){
        printf("%i", vet3);
    }
    return 0;
} 

 

Link para o comentário
Compartilhar em outros sites

Olá

   
    for(i=0; i<10; i++){
        vet3[i*2] = vet1;
    }
    
    for(i=0; i<10; i++){
        vet3[i*2+1] = vet2;
    }

Não consigo entender o que pretende fazer com o código acima.

Só precisa da interseção: vai ter no máximo 10 caras se os vetores forem iguais. Note que os 10 caras podem estar em ordem diferente.

Percorra um dos vetores, 1 ou 2, e se e somente se um elemento dele estiver presente no outro você coloca no vetor 3. Só isso. 

 

Casos pra pensar, com 5 caras
 

0 1 2 3 4

4 3 2 1 0
vet3: 0 1 2 3 4 talvez em outra ordem

 

0 1 1 1 1

1 1 1 1 1 

vet3: 1

 

1 2 3 1 1

2 3 8 8 8 

vet3: 2 3

 

1 2 3 4 5

6 7 8 9 0

vet3: nada

Link para o comentário
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

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

×
×
  • Criar novo...