Noobweb 0 Denunciar post Postado Dezembro 16, 2014 Olá, bom dia. Gostaria de um ajudinha pessoal, não manjo quase nada de programação. Estava tentando fazer um programa que tem 2 vetores pré-definidos de 15 posições cada. O usuário entra com outros 15 valores de sua escolha e o programa faz a comparação nestes 2 vetores. Se achar valores iguais, imprime qual o vetor e quais são os números. Por enquanto consegui fazer isso. #include <stdio.h> #include <stdlib.h> #include <conio.h> #include <math.h> #include <string.h> #include <locale.h> #include <windows.h> #include <cstdlib> int main() { int vetA[15]={1,2,4,6,10,11,12,13,14,19,21,22,23,24,25}, vetB[15]={1,2,3,4,5,7,11,12,13,14,18,20,21,22,24}, vetC[15], vetD[15], i = 0, j = 0, num = 0, total = 0; int vetE[15], total2 = 0; printf("--- VETOR 1 ---\n\n"); for(j = 0; j < 15; j++) { printf("Informe um numero: "); scanf("%d", &num); vetC[j] = num; } for(i = 0; i < 15; i++) { for(j = 0; j < 15; j++) { if(vetA[i] == vetC[j]) { vetD[i] = vetA[i]; total++; } if(vetB[i] == vetC[j]) { vetE[i] = vetB[i]; total2++; } } } if((total == 0) || (total2 == 0)) printf("não há valores iguais"); else { printf("\nVALORES IGUAIS NO VETOR A\n"); for(i = 0; i < total; i++) { printf(" %d", vetD[i]); } printf("\nVALORES IGUAIS NO VETOR B\n"); for (i = 0; i < total2; i++) { printf(" %d", vetE[i]); } }//fecha Else printf("\n\n"); system("pause"); }//fecha Main() Compartilhar este post Link para o post Compartilhar em outros sites
itlpps 109 Denunciar post Postado Dezembro 16, 2014 Qual sua dúvida?! Compartilhar este post Link para o post Compartilhar em outros sites
Noobweb 0 Denunciar post Postado Dezembro 16, 2014 Quando faço ele funcionar, os valores mostrados no vetor A tem alguns 0. e no vetor B aparece numeros "malucos". Não sei oq há de errado, talvez o programa todo estaja errado. rsrsrs Compartilhar este post Link para o post Compartilhar em outros sites
itlpps 109 Denunciar post Postado Dezembro 16, 2014 Cara, aqui funcionou.. Só coloca um separador quando for mostrar os vetores. printf(" %d - ", vetD[i]); E os 0 é porque está vazio. Por exemplo: Suponha que o único valor igual seja o ultimo. Ele vai guardar em: vetD[14] e sua variável total, vai estar com valor = 1. Minha dica é: Na hora de mostrar os valores iguais, faça o for até 15. Compartilhar este post Link para o post Compartilhar em outros sites
Noobweb 0 Denunciar post Postado Dezembro 16, 2014 Pois é, aqui não funciona. Vou tirar um print pra vc ver como fica. Já, já eu posto não achei um jeito de postar o print. pode ver nesse link: http://www.imagebam.com/image/f3fa55373092116 Compartilhar este post Link para o post Compartilhar em outros sites
itlpps 109 Denunciar post Postado Dezembro 16, 2014 Não deu pra abrir, a rede da empresa não permite kkk Mas é isso cara, editei o post de cima! Compartilhar este post Link para o post Compartilhar em outros sites
Noobweb 0 Denunciar post Postado Dezembro 16, 2014 Ok. vou ver se consigo resolver. Obrigado pela atenção. :joia: Compartilhar este post Link para o post Compartilhar em outros sites