编写程序,从键盘上输入包含有整数和其他字符组成的一行字符串,求取其中最大整数并判断他是否是素数
时间: 2024-02-18 15:59:33 浏览: 26
以下是一个 Java 程序,可以从键盘读取一行字符串,找出其中的最大整数,并判断它是否为素数:
```java
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.print("请输入一行字符串:");
String str = sc.nextLine();
String[] arr = str.split("\\D+");
int max = Integer.MIN_VALUE;
for (String s : arr) {
if (s.length() > 0) {
int n = Integer.parseInt(s);
if (n > max) {
max = n;
}
}
}
System.out.println("最大整数为:" + max);
boolean isPrime = true;
for (int i = 2; i <= Math.sqrt(max); i++) {
if (max % i == 0) {
isPrime = false;
break;
}
}
if (isPrime) {
System.out.println(max + "是素数。");
} else {
System.out.println(max + "不是素数。");
}
}
}
```
程序首先读取一行字符串,然后使用正则表达式 `\D+` 切割字符串,得到一个包含所有整数的字符串数组。接着程序遍历这个字符串数组,找出其中的最大值。然后程序判断这个最大值是否是素数,如果是素数,则输出相应的提示信息。