最大公约数和最小公倍数

来源:互联网 发布:多益网络校招登录 编辑:程序博客网 时间:2024/06/10 22:47

思路:先求出最大公约数,两两比较,递归求出最大约数,再通过两两之乘积除以最大公约数就是最小公倍数;


代码:

//最大公约数int gysMax(int a, int b){return a%b ? gysMax(b, a%b) : b;}//最小公倍数int gbsMin(int a, int b){return a*b / gysMax(a, b);}int _tmain(){int a[5] = { 4, 8, 16,32, 48 };int iGys = a[0];int iGbs = a[0];for (int i = 1; i < 5;i++){iGys = gysMax(iGys, a[i]);iGbs = gbsMin(iGbs, a[i]);}cout << "最大公约数" << iGys << endl;cout << "最小公倍数"<<iGbs << endl;system("pause");return 0;}


0 0