识别题目 用JAVA编写程序,接收输入的元素创建数组, 并完成以下操作: 1.输出数组中的偶数元素。 2.输出数组中的素数。 3.输出数组中的任意两元素和的绝对值的最小值。 输入描述:1行若干个数
时间: 2024-10-24 12:04:14 浏览: 11
在Java中,要编写一个程序来实现这个功能,你可以遵循以下步骤:
1. **创建数组并接收输入**:
使用`Scanner`类从用户那里获取输入,将这些数字存储在一个整型数组中。
```java
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入数组元素(用空格分隔):");
int[] numbers = readInputFromUser(scanner);
// 更多的代码...
}
private static int[] readInputFromUser(Scanner scanner) {
String input = scanner.nextLine();
String[] inputArray = input.split(" ");
int[] array = new int[inputArray.length];
for (int i = 0; i < inputArray.length; i++) {
array[i] = Integer.parseInt(inputArray[i]);
}
return array;
}
}
```
2. **遍历数组并检查条件**:
- **输出偶数元素**:可以遍历数组,检查每个元素是否为偶数,如果是则打印。
- **输出素数**:创建一个辅助函数来判断一个数是否为素数,然后筛选出数组中的素数。
- **计算任意两元素和的绝对值的最小值**:同样遍历数组,对于每一对元素,计算它们的和取绝对值,记录最小值。
```java
// 辅助函数判断素数
private static boolean isPrime(int number) {
if (number <= 1) {
return false;
}
for (int i = 2; i * i <= number; i++) {
if (number % i == 0) {
return false;
}
}
return true;
}
// 输出偶数、素数和最小和
void processArray(int[] array) {
int minSum = Integer.MAX_VALUE;
for (int i = 0; i < array.length; i++) {
if (array[i] % 2 == 0) {
System.out.println(array[i] + " 是偶数");
}
if (isPrime(array[i])) {
System.out.println(array[i] + " 是素数");
}
if (i > 0) {
int sum = Math.abs(array[i] + array[i - 1]);
minSum = Math.min(minSum, sum);
}
}
if (minSum != Integer.MAX_VALUE) {
System.out.println("任意两个元素和的绝对值最小值是: " + minSum);
}
}
```
**完整代码示例**:
```java
import java.util.Scanner;
public class Main {
// ... (先前的代码)
public static void main(String[] args) {
// ... (读取输入)
processArray(numbers);
}
private static int[] readInputFromUser(Scanner scanner) {
// ...
}
private static boolean isPrime(int number) {
// ...
}
private static void processArray(int[] array) {
// 输出偶数和素数,以及最小和
// ...
}
}
```
阅读全文