您的位置:首页 > 其它

最大公约数和最小公倍数

2013-09-26 22:15 169 查看
求解最大公约数用的是欧几里得的辗转相除法。

例如,求(319,377):

∵ 377÷319=1(余58)

∴(377,319)=(319,58);

∵ 319÷58=5(余29),

∴ (319,58)=(58,29);

∵ 58÷29=2(余0),

∴ (58,29)= 29;

∴ (319,377)=2

include<iostream>

using namespace std;

int main( )

{int a,b,c,m,p,q;

while(cin>>a>>b)
{  p=a;q=b;

 if(a<b)

{   c=a; a=b;  b=c;}

while(b!=0)

{m=a%b;

 a=b;

 b=m;

}
cout<<a<<endl;(输出最大公约数)

cout<<p*q/a<<endl;(输出最小公倍数)

}

return 0;

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: