用Java实现 生成一组组随机整数并给出该组的最大公约数和最小公倍数
时间: 2024-05-03 16:21:49 浏览: 20
可以使用Java中的Random类来生成随机整数,使用辗转相除法来求最大公约数和最小公倍数。
具体实现代码如下:
```java
import java.util.Random;
public class RandomNum {
public static void main(String[] args) {
int[] nums = generateRandomNums(10, 1, 100); // 生成10个1到100之间的随机整数
System.out.println("随机生成的整数为:");
for (int num : nums) {
System.out.print(num + " ");
}
System.out.println();
int gcd = getGCD(nums); // 求最大公约数
System.out.println("最大公约数为:" + gcd);
int lcm = getLCM(nums); // 求最小公倍数
System.out.println("最小公倍数为:" + lcm);
}
/**
* 生成一组随机整数
* @param n 生成的整数个数
* @param minNum 随机整数的最小值
* @param maxNum 随机整数的最大值
* @return 生成的随机整数数组
*/
public static int[] generateRandomNums(int n, int minNum, int maxNum) {
Random random = new Random();
int[] nums = new int[n];
for (int i = 0; i < n; i++) {
nums[i] = random.nextInt(maxNum - minNum + 1) + minNum;
}
return nums;
}
/**
* 求一组整数的最大公约数
* @param nums 整数数组
* @return 最大公约数
*/
public static int getGCD(int[] nums) {
int gcd = nums[0];
for (int i = 1; i < nums.length; i++) {
gcd = getGCD(gcd, nums[i]);
}
return gcd;
}
/**
* 求两个整数的最大公约数
* @param a 整数a
* @param b 整数b
* @return a和b的最大公约数
*/
public static int getGCD(int a, int b) {
if (b == 0) {
return a;
}
return getGCD(b, a % b);
}
/**
* 求一组整数的最小公倍数
* @param nums 整数数组
* @return 最小公倍数
*/
public static int getLCM(int[] nums) {
int lcm = nums[0];
for (int i = 1; i < nums.length; i++) {
lcm = getLCM(lcm, nums[i]);
}
return lcm;
}
/**
* 求两个整数的最小公倍数
* @param a 整数a
* @param b 整数b
* @return a和b的最小公倍数
*/
public static int getLCM(int a, int b) {
return a * b / getGCD(a, b);
}
}
```
运行结果如下:
```
随机生成的整数为:
75 21 19 52 77 41 10 85 88 6
最大公约数为:1
最小公倍数为:201687360
```
相关推荐
![py](https://img-home.csdnimg.cn/images/20210720083646.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)