/*什么是辗转相除法呢?
比如求x,y的最大公约数,
先讨论(x%y)的余数b是否等于0,
如果是,
则y为最大公约数;
否则将y的值赋给x,
把b的值赋给y然后再继续对b讨论,
一直循环下去直到b=0时,
y值就是所求的最大公约数了。
其实现代码如下:*/
#include <iostream>
using namespace std;
int main()
{
int a,b,num1,num2,temp;
cout<<"请输入两个整数:"<<endl;
cin>>num1>>num2;
if (num1>num2)
{
temp=num1;
num1=num2;
num2=temp;
}
a=num1;
b=num2;
while (b!=0)//采用辗转相除法求最大公约数
{
temp=a%b;
a=b;
b=temp;
}
cout<<"最大公约数为:"<<a<<endl;
cout<<"最小公倍数为:"<<num1*num2/a<<endl;
system("pause");
return 0;
}