此处用的是最简单的遍历方法,先求出2个数的最小公倍数,再用两个数之积去除以最小公倍数就能够得到最大公约数。
#include <iostream> #include <cmath> using namespace std; int main() { int a,b,c,d; cin>>a>>b; for(int i=a;;i++) { if(i%a==0 &&i%b==0) { c=i; break; } } d=a*b/c; cout<<a<<" "<<b<<"最小公倍数是"<<c<<endl; cout<<a<<" "<<b<<"最大公约数是"<<d<<endl; return 0; }