现在的位置: 首页 > 综合 > 正文

求最大公约数

2013年01月27日 ⁄ 综合 ⁄ 共 349字 ⁄ 字号 评论关闭
/*
 * Calculate the Greatest Common Divisor
 * Euclid的辗转相除法
 * gcd(a,b)=gcd(b,a)
 * gcd(a,b)=gcd(-a,b)
 * gcd(a,0)=|a|
 * gcd(a,b)=gcd(b,a%b)	0<=a%b<b
 */
public class Gcd {
	public static int gcd(int a, int b) { // 返回a和b的最大公因数
		while (b != 0) {
			int temp = a % b;
			a = b;
			b = temp;
		}
		return a;
	}

	public static void main(String[] args) {
		int a = 12, b = 18, c = 24;
		System.out.println("gcd(" + a + "," + b + "," + c + ")="
				+ gcd(gcd(a, b), c));
	}
}

【上篇】
【下篇】

抱歉!评论已关闭.