* //请用Java或C编写一个程序,找出两个整数的最大公约数,公因数 * 最大公约数,也称最大公因数、最大公因子,指两个或多个整数共有约数中最大的一个。a,b的最大公约数记为(a,b), * 同样的,a,b,c的最大公约数记为(a,b,c),多个整数的最大公约数也有同样的记号。求最大公约数有多种方法, * 常见的有质因数分解法、短除法、辗转相除法、更相减损法。与最大公约数相对应的概念是最小公倍数,a,b的最小公倍数记为[a,b]。 * 中文名最大公约数 * 外文名Greatest Common Divisor(GCD) * 别 名Highest Common Factor(HCF) * <p/> * 质因数分解法:把每个数分别分解质因数,再把各数中的全部公有质因数提取出来连乘,所得的积就是这几个数的最大公约数。 * 例如:求24和60的最大公约数,先分解质因数,得24=2×2×2×3,60=2×2×3×5,24与60的全部公有的质因数是2、2、3,它们的积是2×2×3=12,所以,(24、60)=12。 */ public class GCDHCF { public int gcd(int m, int n) { //辗转相除法:辗转相除法是求两个自然数的最大公约数的一种方法,也叫欧几里德算法。 // if(m>n){ if (n == 0) return m; else return (gcd(n, m % n)); // } /* else { if(m==0) return n; else return(gcd(m,n%m)); }*/ } public static void main(String[] args) { GCDHCF g = new GCDHCF(); System.out.println(g.gcd(24, 60)); System.out.println(g.gcd(60, 24)); } }