Ir ao conteúdo
  • Cadastre-se
Caio Graco Gobbo

RESOLVIDO Como achar a diferença entre dois vetores em C?

Recommended Posts

Pessoal, passei a tarde toda pensando, mas não consegui entender como acho a diferença entre dois vetores em linguagem C.
A questão é a seguinte:
Leia dois vetores de inteiros x e y, cada um com 5 elementos (assuma que o usuario n ´ao informa elementos repetidos). Calcule e mostre os vetores resultantes em cada caso abaixo:
• Soma entre x e y: soma de cada elemento de x com o elemento da mesma posic¸ao em y.
• Produto entre x e y: multiplicacao de cada elemento de x com o elemento da mesma posicao em  y.
• Diferenca entre x e y: todos os elementos de x que nao existam em  y.
• Intersecao entre  x e y: apenas os elementos que aparecem nos dois vetores.
• Uniao entre  x e y: todos os elementos de x, e todos os elementos de y que nao estão em  x.
Alguém pode ajudar no tópico da diferença?
 
Consegui fazer até essa parte:
 

#include <stdio.h>#include <stdlib.h>int main(){    int i, j, k=0;    int n[5], n1[5], soma, mult, inter[5];    inter[0]=0;    for(i=0; i<5; i++)    {        printf("Digite o valor de x:\n");        scanf("%d", &n[i]);        for(j=1; j<=i; j++)        {            while(n[i]==n[j-1])            {                printf("Numero repetido, digite o valor de x novamente.\n");                scanf("%d", &n[i]);                continue;            }        }        printf("Digite o valor de y:\n");        scanf("%d", &n1[i]);        for(j=1; j<=i; j++)        {            while(n1[i]==n1[j-1])            {                printf("Numero repetido, digite o valor de y novamente.\n");                scanf("%d", &n1[i]);                continue;            }        }    }    for(i=0; i<5; i++)    {        soma=n[i]+n1[i];        mult=n[i]*n1[i];        printf("Soma de x e y na posicao %d=%d\nMultiplicacao na posicao %d=%d\n", n[i], soma, n[i], mult);    }    for(i=0; i<5; i++)    {        for(j=0; j<5; j++)        {            if((i==0) && (j==0))                printf("Interseccao de x e y:\n");            if(n[i]==n1[j])            {                inter[k]=n[i];                printf("%d ", inter[k]);                k++;            }        }        if((i==4) && (k==0))            printf("Nao ha interseccao.\n");    }}

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Escreva uma busca/pesquisa em que cada elemento em x deve ser pesquisado em y. Você já estudou estruturas de loop for aninhadas, vai ter que ser com 2 declarações de loop ou modular com função de busca.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro 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 publicações 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

×