Fala galera, beleza? Tenho um trabalhinho de aula aqui, porém na hora de gerar o MMC e o MDC está dando errado o resultado no meu código. Alguém tem sugestões??
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[])
{
int num1, num2, divisores, contadorvetor1 = 0, contadorvetor2 = 0;
printf("\nDigite o primeiro numero:\n");
scanf("%d", &num1);
int vet1[num1];
printf("\nDigite o segundo numero:\n");
scanf("%d", &num2);
int vet2[num2];
divisores = 2;
printf("\nDivisores do primeiro numero\n");
while (num1 != 1) {
if (num1%divisores == 0)
{
vet1[contadorvetor1] = divisores;
printf("%d\n", divisores);
num1 = num1 / divisores;
contadorvetor1++;
}
else
{
divisores++;
}
}
divisores = 2;
printf("\nDivisores do segundo numero\n");
while (num2 != 1) {
if (num2%divisores == 0)
{
vet2[contadorvetor2] = divisores;
printf("%d\n", divisores);
num2 = num2 / divisores;
contadorvetor2++;
}
else
{
divisores++;
}
}
int entrou = 0;
int entrou2 = 0;
int menor = 1000000;
int maior = -1;
for (int i = 0; i < contadorvetor1; i++)
{
for (int j = 0; j < contadorvetor2; j++)
{
if (vet1[i] == vet2[j])
{
if (menor > vet1[i])
{
entrou = 1;
menor = vet1[i];
}
if (maior < vet1[i])
{
entrou2 = 1;
maior = vet1[i];
}
entrou = 1;
}
}
}
if (entrou == 1)
{
printf("\nMMC: %d\n", menor);
printf("\nMDC: %d\n", maior);
}
return 0;
}