admin管理员组

文章数量:821350

用java写有多个数公约数,java求多个数的最大公约数和最小公倍数

今天做老师布置的实验,捣鼓了很久,终于做出来了,下面是代码

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求多个数的最大公约数和最小公倍数