有A和B两个整数
最大公因数:
在A和B的因数中能同时整除A和B的最大的数。
求法:辗转相除法(欧几里得算法)
int gcd(int m , int n){ int r = 0 ; while(n){ r = m%n; m = n; n = r; } return m; }
在C++ algorithm头文件中,有__gcd(A,B)方法。
#include <iostream> #include <algorithm> using namespace std; int main() { int a, b; cin>>a>>b; cout<<__gcd(a,b)<<endl; return 0; }
最小公倍数:
A和B都能整除的最小的数。
A和B的最小公倍数 = A*B / gcd(A,B);