求两个数的最大公因数方法多种多样,我这就来给大家介绍一种简单,容易理解的方法`:
int jude(int a,int b)//实现了函数无需比较大小来求最大公因数
{
if(b==0)return a;//在等于零时返回;
else
return jude(b,a%b);//运用递归函数
}
最大公约运用简单的递归方法:运用了数学方法
** 最小公倍数实在最大公约数函数的基础上实现,运用了上述函数所得的最大公约数,即可以直接调用函数的结果进行运算,简单方便直接;运用的主要数学原理是:最小共倍数=两个数的乘积 / 最大公因数;用lcm表示最小公倍数,设要求的最小公倍数两个数分别为 a , b ;则用函数表达为 lcm= a*b/jude(a,b);即为所求。详见代码如下:**
int lcm(int a,int b)
{
return a*b/jude(a,b);//直接用函数求得最小公倍数
}
运用到实战中
#include<iostream>
using namespace std;
int jude(int a,int b)
{
if(b==0)return a;
else
return jude(b,a%b);}
int lcm(int a,int b)
{
return a*b/jude(a,b);
}
int main()
{
int a,b;
cin>>a>>b;
cout<<jude(a,b)<<endl;
cout<<lcm(a,b)<<endl;
}
可以直接套用模板,这些都是频率比较高的函数,运用起来简洁方便,是运用广泛的函数
精彩的内容需要大家领会,知识的海洋里面畅游也是很累的,我得先去吃饭了