求最大公因数的方法有很多,除了辗转相除法,再给大家说一种:
先求出两个数中最小的,用两个数分别除以最小数到2,如果都能除尽,说明这数为最大公因数;
用两个数除以最大公因数的两个商*最大公因数即为最小公倍数。
#include<stdio.h>
int main()
{
int a, b = 0;
int i = 0;
scanf_s("%d %d", &a, &b);
if (a > b)
{
int c = a;
a = b;
b = c;
}
for (i = a; i >=2; i--)
{
if ((a%i == 0) && (b%i == 0))
{
printf("最大公因数为:%d\n", i);
break;
}
}
printf("最小公倍数为:%d", i*(a/i)*(b/i));
system("pause");
return 0;
}