Java-公约公倍

题目:

如果两个数很大,怎样求最大公约数,最小公倍数?
如果是n个数呢?比如1000个数的最小公倍数

分析:求a和b的最大公约数——辗转相除法(又叫欧几里得定理)。即找到一个数,能对a,b都除尽。对于这个定理:a,b的最大公约数,等于b,a-b(a大)的最大公约数,等于b,a-b-b...(如果够减就可一直减下去)的最大公约数。也就是说求b,a%b 和求a,b是一样的。也即欧几里得定理内容为gcd(a,b)=gcd(b,a%b)。

源代码:

Java-公约公倍

结果:

Java-公约公倍

 

上一篇:NOI / 2.2基本算法之递归和自调用函数——7592:求最大公约数问题


下一篇:C语言--编写程序,输入一个整数,判断它能否被3,5,7整除