版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/wdays83892469/article/details/79771162
十转任意进制
核心代码
public static int gcd(int a, int b) { // 获取最大公约数
if (b==0) {
return a;
}else {
return gcd(b, a%b);
}
}
n个数求最大公约数
public class n个数求最小公倍数 {
public static void main(String[] args) {
int arr[] = { 14, 21, 5 };
System.out.println(lcm(arr));
}
// n个数求最小公倍数
public static int gcd(int a, int b) { // 获取最大公约数
int temp;
if (a < b) {
temp = a;
a = b;
b = temp;
}
if (a % b == 0) {
return b;
} else {
return gcd(b, a % b);
}
}
public static int lcm(int arr[]) { // 获得最小公倍数
int x, y, num = arr[0], i, gcd;
// 去数组的第一和第二个数,计算它们的公倍数,然后再取第三个数,
// 和之前的公倍数计算它们的公倍数,直到只有一个数。
for (i = 0; (i + 1) < arr.length; i++) {
x = num;
y = arr[i + 1];
// 计算公约数
gcd = gcd(x, y);
// 计算公倍数
num = x / gcd * y / gcd * gcd;
}
return num;
}
}
n个数求最小公倍数
public class n个数求最小公倍数 {
public static void main(String[] args) {
int arr[] = { 14, 21, 5 };
System.out.println(lcm(arr));
}
// n个数求最小公倍数
public static int gcd(int a, int b) { // 获取最大公约数
int temp;
if (a < b) {
temp = a;
a = b;
b = temp;
}
if (a % b == 0) {
return b;
} else {
return gcd(b, a % b);
}
}
public static int lcm(int arr[]) { // 获得最小公倍数
int x, y, num = arr[0], i, gcd;
// 去数组的第一和第二个数,计算它们的公倍数,然后再取第三个数,
// 和之前的公倍数计算它们的公倍数,直到只有一个数。
for (i = 0; (i + 1) < arr.length; i++) {
x = num;
y = arr[i + 1];
// 计算公约数
gcd = gcd(x, y);
// 计算公倍数
num = x / gcd * y / gcd * gcd;
}
return num;
}
}