最大公约数
/辗转相除的简单函数形式,当其中一个为0时,则跳出while循环,此时x+y就为最小公约数/
int slyar(int x,int y)
{
while(x>y?(x%=y):(y%=x));
return x+y;
}
/辗转相除:/
#include"stdio.h"
int main()
{
int a,b,t,n,m;
while(scanf("%d%d",&a,&b)!=EOF)
{
if(a<b)
{
t=a;a=b;b=t;
}
m=a;n=b;
while(n!=0)
{
t=m%n;
m=n;
n=t;
}
printf("最大公约数:%d\n",m);
printf("最小公倍数:%d\n",a*b/m);
}
return 0;
}
浙公网安备 33010602011771号