#include
int main()
{
int m,n,a,b,k,c,change;
double result,x;
scanf("%d %d",&m,&n);
if(m>n)
{
a=m;
b=n;
while(a%b!=0)
{
c=a%b;
a=b;
b=c;
}
x=m*n;
result=x/b;
}
else
{
change=n;
n=m;
m=change;
a=m;
b=n;
while(a%b!=0)
{
c=a%b;
a=b;
b=c;
}
x=m*n;
result=x/b;
}
printf("%d %g",b,result);
return 0;
}
使用相减法找到最大公约数,再用公式法计算最小公倍数。
#include<stdio.h>
int main()
{
int a = 0;
int b = 0;
int x = 0;
int y = 0;
scanf("%d %d", &a, &b);
x = a;
y = b;
while ((a - b) != 0)
{
if (a>b)
a = a - b;
else
b = b - a;
}
printf("%d \n", b, (x*y) / b);
return 0;
}