辗转取余法求最大公倍数及最小公约数
2014-09-20 16:18
239 查看
假设两个整数m,n的最大公约数为p,则两数的最大公倍数为q=*n/p。
问题描述:
求两个整数的m,n的最大公约数及最小公倍数?
例:
6 12 的最大公约数为6,最小公倍数为24;
3 2 的最大公约数为1,最小公倍数为6;
解决方案:
//得到最大公约数
int GreaterCommonDivisor(int m, int n) {
int r;
for (; r=m%n; m = n, n = r)
;
return n;
}
或者
int GreaterCommonDivisor(int m, int n) {
do {
r = m % n;
m = n;
n = r;
}while (r != 0);
return m;
}
求最小公倍数为m*n/最小公倍数
问题描述:
求两个整数的m,n的最大公约数及最小公倍数?
例:
6 12 的最大公约数为6,最小公倍数为24;
3 2 的最大公约数为1,最小公倍数为6;
解决方案:
//得到最大公约数
int GreaterCommonDivisor(int m, int n) {
int r;
for (; r=m%n; m = n, n = r)
;
return n;
}
或者
int GreaterCommonDivisor(int m, int n) {
do {
r = m % n;
m = n;
n = r;
}while (r != 0);
return m;
}
求最小公倍数为m*n/最小公倍数
相关文章推荐
- 最小公倍数和最大公约数
- 最小公倍数与最大公约数
- 输出最小公倍数和最大公约数
- C/C++训练1---最大公约数与最小公倍数
- 输入两个正整数a和b,求其最大公约数和最小公倍数。
- 十一周—最大公约数最小公倍数
- 最大公约数和最小公倍数
- 最大公约数与最小公倍数
- 如何求两个正整数最大公约数和最小公倍数。
- 输入两个正整数m和n,求其最大公约数和最小公倍数 C/C++
- C语言----求两数最大公约数和最小公倍数
- c100-16 题目:输入两个正整数m和n,求其最大公约数和最小公倍数。
- 最小公倍数和最大公约数
- 数论继续学习3--最大公约数gcd和最小公倍数lcm
- c++实验7-最大公约数与最小公倍数
- C语言实验——最小公倍数和最大公约数
- 最大公约数与最小公倍数
- 最大公约数与最小公倍数
- 最小公倍数与最大公约数问题(NOIP竞赛原题)