今天做老师布置的实验,捣鼓了很久,终于做出来了,下面是代码
import java.util.*;
class Num {
// 最大公约数
static int gcd(int a, int b) {
int t;
if (a < b) {
t = a;
a = b;
b = t;
}
if (b == 0)
return a;
return gcd(b, a % b);
}
// 最小公倍数
static int lcm(int a, int b) {
return a * b / gcd(a, b);
}
public static void main(String args[]) {int[] data = new int[100];int i, j, k;Scanner sc = new Scanner(System.in);System.out.print("要输入几个数字 : ");int n = sc.nextInt();System.out.print("输入n个数:");for (i = 0; i < n; i++) {data[i] = sc.nextInt();}j = data[0];for (i = 1; i < n; ++i)j = gcd(j, data[i]);k = 1;for (i = 0; i < n; ++i)k *= data[i] / j;k *= j;System.out.println("最大公约数是:" + j);System.out.println("最小公倍数是:" + k);}}
如果觉得《用java写有多个数公约数 java求多个数的最大公约数和最小公倍数》对你有帮助,请点赞、收藏,并留下你的观点哦!