Ajuda com Linguagem C

4 respostas
c
D

Quando terminei o programa vi que nao era para ser feito com Numeros e sim com Palavras ou Strings, alguem me ajuda no que devo mudar? Pois perdi semanas com isso e agora estou sem um norte, sou novo na faculdade de ADS e nao sei muito sobre programação.

#include 

#include 

struct exercicio{

int vetor[5];

int a;

};
//Letra B (Insercao)

int x[5];

//==========================================================================

void inser(int e, int x[], int tam)

{

printf("\n");

printf("\nInsercao de um numero em um vetor–>\n");

e=rand()%100;
for(int i=0;i<tam;i++){
	 x[i]=i;
	 x[i]= rand()%100;
	  if(x[i]==e)
   {
   	printf("Numero ja existe no conjunto!\n");
   }
	  }
   
   for(int i=0;i<tam;i++){
   
   printf("\nInsercao: %d",x[i]);
   }
   printf("\nInsercao: %d",e);
}

//==========================================================================

//Letra C (Listagem)

void mostra_inser(int x[], int tam)

{

printf("\n");	

printf("\nVetor digitado separado:\n");

for(int i=i;i<tam;i++){

printf("{%d},",x[i]);

}

}

//==========================================================================
int main()

{

//Letra A

exercicio a1;
printf("Posicao dos Elementos-->\n");
  for(int i=0;i<5;i++){
    a1.vetor[i]= rand()%100;
     printf("\nPosicao %d: %d",i,a1.vetor[i]);

}
//==========================================================================

int x[5],e;

inser(e,x,5);

mostra_inser(x,5);
//==========================================================================

//Letra D (Uniao)

int a[2];

int b[2];

int c[4];
printf("\n");

printf("\nUniao de Dois Vetores preenchidos–>\n");

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

a[i]=rand()%100;

printf("\nConjunto A: %d “,a[i]);

}

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

b[i]=rand()%100;

printf(”\nConjunto B: %d “,b[i]);

}

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

c[i]=a[i];

}

for(int i=2;i<4;i++){

c[i]=b[i-2];

}

printf(”\n");

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

printf("\nUniao: %d ",c[i]);

}

//==========================================================================

//Letra E (Interseccao)
printf("\n");

printf("\nInterseccao dos Vetores–>\n");

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

for(int j=0;j<2;j++){

for(int k=0;k<4;k++){

if(a[i] == b[j]){

printf("\n%d", c[k]);

}

}

}

}

//==========================================================================

//Letra F (Diferenca)

printf("\n");

printf("\nDiferenca dos Vetores–>\n");

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

a[i]!=b[i];

}

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

c[n]=a[n];

printf("\n%d", c[n]);

}

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

c[n]=b[n];

printf("\n%d", c[n]);

}

//==========================================================================

4 Respostas

darlan_machado

Começa por aqui, né? Ao invés de um vetor de int, você precisa de um vetor de char ou char *

D

Mas se eu mudar só os vetores de inteiros para de char daria certo? Pois tenho que entregar isso sexta feira e como disse sou novo e perdi semanas nisso.

darlan_machado

Interpretação de texto é fundamental nessa área, cara.

Se eu coloquei começa, é por que você terá de mudar mais coisas.
A questão é: se funciona com números, mudar para char não deve ter um comportamento tão diferente. De char para char * também não é tão traumático.

D

Consegui resolver, perdi a tarde mas deu certo gracas a Deus, mas falta uma letra e estou em duvida de como começar ela. Voce consegue me ajudar?

g) Faça uma função para fazer o produto cartesiano de 2 conjuntos X e Y, retornado um terceiro conjunto. O produto, no caso de strings, deve concatenar os elementos.

Criado 6 de novembro de 2019
Ultima resposta 6 de nov. de 2019
Respostas 4
Participantes 2