首先用较大的数对较小的数取余,再用较小的数对余数取余,直到余数为0,此时除数为最大公因数,两数相乘再除以最大公因数即为最小公倍数。
代码实现:
#include<bits/stdc++.h>
using namespace std;
int main(){
int a,b,y,max,min;
cin >> a >> b;
max = a; min = b;
if(a > b){
y=a;
a=b;
b=y;
}
while(a != 0){
y = b % a;
b = a;
a = y;
}
cout << "最大公因数为" << b << endl << "最小公倍数为" << max * min / b;
return 0;
}