题目描述:两个正整数,计算这两个数的最小公倍数
输入:
输入数据只有一行,包括两个不大于1000的正整数
输出:
输出数据也只有一行,给出这两个数的最小公倍数
我是先用辗转相除法算最大公约数,再算最小公倍数
#include <stdio.h>
int mun(int a,int b)
{
int i,gys; /*gys为最大公约数,i为余数*/
loop1:if (a<b)
{
i=b%a;
if (i==0) gys=a;
else {b=a;a=i;goto loop1;}
}
loop2:if (a>b)
{
i=a%b;
if (i==0) gys=b;
else {a=b;b=i;goto loop2;}
}
}
int main()
{
int n,m,gys,d; /*d为最小公倍数*/
int mun(int a,int b);
scanf("%d%d",&n,&m);
gys=mun(n,m);
d=n*m/gys;
printf("%d",d);
return 0;
}