当前位置: 代码迷 >> 综合 >> 最大公约数、最小公倍数
  详细解决方案

最大公约数、最小公倍数

热度:38   发布时间:2023-12-04 10:12:33.0
#include <iostream>
using namespace std;int MaxY(int a,int b)
{int min, max;max=a>b?a:b;min=a<b?a:b;if(max%min==0)return min;elsereturn MaxY(min,max%min);
} int main()
{int a,b;cout<<"输入两个整数,用空格分隔,按回车键(Enter):";cin>>a>>b;cout<<"这两个整数的最大公约数为:"<<MaxY(a,b)<<endl;return 0;
}辗转相除法

借助最大公约数求最小公倍数
步骤:   
一、利用辗除法或其它方法求得最大公约数   
二、 最小公倍数等于两数之积除以最大公约数。  

#include <iostream>
using namespace std;int MinY(int a,int b)
{int min, max;int r;max=a>b?a:b;min=a<b?a:b;if(max%min==0)return max;while(max%min!=0){r=max%min;max=min;min=r;}return a*b/min;
} int main()
{int a,b;cout<<"输入两个整数,用空格分隔,按回车键(Enter):";cin>>a>>b;cout<<"这两个整数的最小公倍数为:"<<MinY(a,b)<<endl;return 0;
}

  相关解决方案