题目:给定两个正整数,计算这两个数的最小公倍数。
input:输入包含多组测试数据,每组只有一行,包括两个不大于1000的正整数.
output:对于每个测试用例,给出这两个数的最小公倍数,每个实例输出一行。
代码实现:
#include <iostream>
#include<stdio.h>
using namespace std;
long long gcd(long long a,long long b)
{
if(b==0)
return a;
return gcd(b,a%b);
}
int main()
{
long long a,b,n;
while(scanf("%lld %lld",&a,&b)!=EOF)
{
if(a<b)
swap(a,b);
n=a/gcd(a,b)*b;
printf("%lld\n",n);
}
return 0;
}
注:此题要求最小公倍数=两数乘积除以它俩的最大公约数,所以其实就是求它的最大公约数,最大公约数求法用gcd求取,递归