Ir ao conteúdo
  • Cadastre-se
cesar yokoyama

sera que alguem me poderia me ajudar linguagemC com string não compila certo

Recommended Posts

o programa vair ter que fazer o seguinte falar p/ o usuario digitar 3 letra para o conjutoA e 3 letra p/conjuntoB dai ele vai fazer 1 ordenação gerando o 3º vetor como resposta que seria o vetor C depois vai fazer a união e interseccao

a uniao é so pegar todas as letras do conjunto de A e de B e vou ter que mostrar na tela depois a intersecção vai pegar todas as letras iguais o que tem no conjuntoA e no conjuntoB e vai mostrar na tela.

obs: eu testei no compilador builder c++3 e dev c++

e o metodo de ordenação é o seleção direta

e estou tentando usar string

EX:conjuntoA{c,b,a} conjuntoB{e,d,c} --uniao resposta conjuntoC{a,b,c,d,e}

interseccao{c}

#include<stdio.h>

#include<conio.h>

#define n 3

#include<stdlib.h>

// é esse o certo

main ()

{

using namespace std;

char a[n],b[n];

char c[2*n]; // o 2*n é para ficar com o dobro de tamanho

system("cls");// limpar lixo

for (int i=0;i<n;i++)

{

// printf("digite os valores para conjunto A:"); //AQUI

scanf("%s",&a);

printf("Digite os valores para conjuntos B:");

scanf("%s",&b);

}

// inserindo A e B em C

for(int l=0;l<n;l++){

c[l]=a[l];

int j=0;

int k=0;

for(j=l;j<n;j++){

c[j]=b[k];

k++;

}

}

// uniao

for(int i=0;i<2*n;i++){

if(c!= c[i--])

printf("%s",c);

}

// interseccao

for(int i=0;i<n;i++){

if(a==b[j])

printf("%d",a);

}}

};

Compartilhar este post


Link para o post
Compartilhar em outros sites

void uniao_intersec(char *conjuntoA,char *conjuntoB);

int main

{

//-------------------------------Definiçoes---------------------------------------//

char conjuntoA[3],conjuntoB[3],conjuntoC[3];

//-------------------------------------------------------------------------------//

printf("Digite os elementos do conjunto A");

for(int i=0;i<3;i++)

{

conjuntoA=toupper(getche());

}

printf("Digite os elementos do conjunto B");

for(int i=0;i<3;i++)

{

conjuntoB=toupper(getche());

}

uniao_intersec(&conjuntoA,&conjuntoB);

}

void uniao_intersec(char *conjuntoA,char *conjuntoB)

{

char uniao[6],intersec[3];

for(int i=0;i<3;i++)

{

for(int j=0;j<3;j++)

{

if((*conjuntoA) == (*conjuntoB)[j])

{

intersec = (*conjuntoA);

}

}

}

}

Ficou uma solução meio "porca", mas como to meio sem tempoa qui, deixa assim mesmo. falta você fazer a de uniao, que é a mais fácil, e mandar imprimir. abração.

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

×