Java SE笔记: 代码块:最大公约数,最小公倍数

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
/**
* 获得2数的最大公约数
*/
public int getGCD(int x,int y) {
int a = y < x ? y : x;
int b = x >= y ? x : y;
int c = 1, e; // 定义c为最大公约数,d为最小公倍数,e为中间变量
while (b % a != 0) {
e = b % a;
if (e > a) {
b = e;
}
else {
b = a;
a = e;
}
}
c = a;
return c;
}

/**
* 获得2数的最小公倍数
*/
public int getLCM(int x,int y) {
return x * y / getGCD(x, y);
}
文章目录