Gente, me ajudem por favor, é urgente!! Crie um algoritimo na Linguagem C que leia três números e imprima o calculo do MMC entre esses numeros.
Soluções para a tarefa
SEGUE O CÓDIGO EM 'C' COM SUB-ROTINA:
#include <stdio.h>
int MMC(int n1,int n2, int n3)
{
int maior = n1;
if(n2 > maior) maior = n2;
if(n3 > maior) maior = n3;
int MMC = 1;
while(n1!=1 || n2!=1 || n3!=1)
{
for(int i = 2; i <= maior; i++)
{
if((n1%i == 0) || (n2%i==0) || (n3%i==0))
{
printf("\n%d %d %d - %d", n1,n2,n3,i);
MMC*=i;
if(n1%i == 0) n1 = n1/i;
if(n2%i == 0) n2 = n2/i;
if(n3%i == 0) n3 = n3/i;
break;
}
}
}
return MMC;
}
int main()
{
int n[3];
for(int i=0;i<3;i++)
{
printf("Informe o %dº número: ", i+1);
scanf("%d", &n[i]);
}
printf("\nMMC(%d,%d,%d) = %d ", n[0],n[1],n[2], MMC(n[0],n[1],n[2]));
return 0;
}
SEGUE ABAIXO IMAGEM DE UM DOS TESTES:
Resposta:
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
int main()
{
int a,b,c,cont,maior=1,mmc=1;
printf("Digite tres numeros:\n");
scanf("%d",&a);
if(maior<a)
maior=a;
scanf("\n%d",&b);
if(maior<b)
maior=a;
scanf("\n%d",&c);
if(maior<c)
maior=c;
for(cont=2;cont<=maior;cont++)
{
if(a%cont==0 || b%cont==0 || c%cont==0)
{
if(a%cont==0 || b%cont==0 || c%cont==0)
mmc=mmc*cont;
if(a%cont==0){
a=a/cont;
}if(b%cont==0){
b=b/cont;
}if(c%cont==0){
c=c/cont;
}
}
}
printf("\n\n\nRESULTADO:----\na=%d\nb=%d\nc=%d\ncont=%d\nmaior=%d\nmmc=%d\n",a,b,c,cont,maior,mmc);
}
Explicação:
Compilado em vsc.