最大公约数和最小公倍数
最大公约数:
方法:辗转相除法
递归边界:0和任意一个整数a的最大公约数都是a
递归式:gcd(a.b)=gcd(b,a%b);
递归边界:gcd(a,0)=a;
#include<iostream> using namespace std; int gcd(int a,int b){ if(b==0){ return a; } else return gcd(b,a%b); } int main(){ int a,b; cin>>a>>b; cout<<gcd(a,b); return 0; }
最小公倍数:
根据a*b=最大公约数c*最小公倍数d
可求出最大公约数c与两数乘积a*b做除法
d=a*b/c