最大公约数
#include<stdio.h>
int main()
{
int m,n,r;
scanf("%d %d",&m,&n);
r=m%n;
while (r!=0)
{
m=n; /*数论中有明确的证明方法,这里就不详细解答了*/
n=r; /*可以手动模拟循环,慢慢找出规律*/
r=m%n;
}
printf("%d",n);
return 0;
}
最小公倍数
#include<stdio.h>
int main()
{
int m,n,r,s;
scanf("%d %d",&m,&n);
s=m*n;
r=m%n;
while (r!=0)
{
m=n;
n=r;
r=m%n;
}
s=s/n; /*最小公倍数就是原来两数乘积除以他们的最大公约数*/
printf("%d",s);
return 0;
}