4.使用Math类产生随机数 构造拥有n个元素的数组(n由键盘输入),往数组中随机填入2000-3000之间的整数,然后统计并输出其中大于2500与小于等于2500的百分比。(注意:可以使用for each循环进行统计,随机数用法见参考资料)
时间: 2024-09-25 19:07:29 浏览: 32
在Java中,你可以使用`java.util.Random`类配合`Math.random()`函数来生成随机数,并构建数组。首先,需要导入必要的库:
```java
import java.util.Random;
import java.util.Scanner;
```
以下是创建数组、填充随机数以及计算比例的基本步骤:
1. 创建一个Scanner对象获取用户输入的数组长度n:
```java
Scanner scanner = new Scanner(System.in);
System.out.println("请输入数组的长度:");
int n = scanner.nextInt();
```
2. 初始化Random对象并生成指定范围内的随机数,添加到数组中:
```java
int[] array = new int[n];
Random random = new Random();
for (int i = 0; i < n; i++) {
int randomNumber = (int) (Math.random() * (3000 - 2000 + 1)) + 2000; // 生成2000-3000之间的整数
array[i] = randomNumber;
}
```
3. 使用for-each循环遍历数组,分别统计大于2500和小于等于2500的元素数量:
```java
int countGreaterThan2500 = 0;
int countLessThanOrEqualTo2500 = 0;
for (int num : array) {
if (num > 2500) {
countGreaterThan2500++;
} else if (num <= 2500) {
countLessThanOrEqualTo2500++;
}
}
```
4. 计算百分比并输出结果:
```java
double percentGreaterThan2500 = (countGreaterThan2500 / (double) n) * 100;
double percentLessThanOrEqualTo2500 = (countLessThanOrEqualTo2500 / (double) n) * 100;
System.out.printf("大于2500的元素占比: %.2f%%\n", percentGreaterThan2500);
System.out.printf("小于等于2500的元素占比: %.2f%%\n", percentLessThanOrEqualTo2500);
```
阅读全文