//最大公约数-递归形式
#include <stdio.h>
int gcd(int a,int b)
{
if(b == 0)
return a;
else
return gcd(b,a%b);
}
int main()
{
int a,b;
while(scanf("%d%d",&a,&b) != EOF)
{
printf("%d\n", gcd(a,b));
}
return 0;
}
//最大公约数-非递归形式
#include <stdio.h>
int gcd(int a,int b)
{
while(b)
{
int t = a % b;
a = b;
b = t;
}
return a;
}
int main()
{
int a,b;
while(scanf("%d%d",&a,&b) != EOF)
{
printf("%d\n", gcd(a,b));
}
return 0;
}
//最小公倍数
/***
公式:lcm(a,b) = a * b / gcd(a,b)
***/
#include <stdio.h>
int gcd(int a,int b)
{
return b != 0 ? gcd(b,a%b) : a;
}
int main()
{
int a,b;
while(scanf("%d%d",&a,&b) != EOF)
{
printf("%d\n", a * b / gcd(a,b));
}
return 0;
}
// by AutuanLiu