分析最大公约数
最大公约数是指两个或多个整数共有约数中,最大的一个约数 。常用的方法是欧几里得算法,也叫辗转相除法 。
假如需要求 1997 和 615 两个正整数的最大公约数,用欧几里得算法,是这样进行的:
1997 / 615 = 3 (余 152)
615 / 152 = 4(余7)
152 / 7 = 21(余5)
7 / 5 = 1 (余2)
5 / 2 = 2 (余1)
2 / 1 = 2 (余0)
至此,最大公约数为1
以除数和余数反复做除法运算,当余数为 0 时,取当前算式除数为最大公约数,所以就得出了 1997 和 615 的最大公约数
【使用c++求最大公约数与最小公倍数】最小公倍数
知道了最大公约数,那么求最小公倍数就迎刃而解了,因为有这样一个公式:a,b的最小公倍数=a*b/(a和b的最大公约数)
代码最大公约数
#include <cstdio>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;while (scanf("%d%d",&a,&b)!=EOF){printf("%d\n",GCD(a,b));}return 0;}最小公倍数
#include <cstdio>using namespace std;// 使用辗转相除法求最大公约数int GCD(int a,int b){if (b == 0) {return a;}else{return GCD(b, a % b);}}// 求最小公倍数int LCD(int a,int b){return a * b / GCD(a, b);}int main(){int a,b;while (scanf("%d%d",&a,&b)!=EOF){printf("%d\n", LCD(a,b));}return 0;}
- 春季老年人吃什么养肝?土豆、米饭换着吃
- 三八妇女节节日祝福分享 三八妇女节节日语录
- 老人谨慎!选好你的“第三只脚”
- 校方进行了深刻的反思 青岛一大学生坠亡校方整改校规
- 脸皮厚的人长寿!有这特征的老人最长寿
- 长寿秘诀:记住这10大妙招 100%增寿
- 春季老年人心血管病高发 3条保命要诀
- 眼睛花不花要看四十八 老年人怎样延缓老花眼
- 香槟然能防治老年痴呆症? 一天三杯它人到90不痴呆
- 老人手抖的原因 为什么老人手会抖
