输入10个很大的整数(超过12位的整数),判断是不是素数。请采用多线程的编程方式实现。
1、输入10个大数
2、为每个大数启动一个线程实现素数判断
参考下这个 https://www.cnblogs.com/java1024/p/11950129.html
import java.util.Scanner;
public class SuShu {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
long a[] = new long[10];
//输入10个数
for(int i = 0;i<10;i++) {
a[i] = in.nextLong();
}
//启动10个线程
for(int i = 0;i<10;i++) {
new ArrSort(a[i]).start();
}
}
}
class ArrSort extends Thread {
long num;
public ArrSort(long num) {
this.num = num;
}
@Override
public void run() {
long i;
int flag = 0;
// 判断num是不是素数
for (i = 2; i < num; i++) {
if (num % i == 0) {
flag = 1;
break;
}
}
// 是素数
if (flag == 0) {
// 输出素数
System.out.println(num);
}
}
}
您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~
如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~
ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632
非常感谢您使用有问必答服务,为了后续更快速的帮您解决问题,现诚邀您参与有问必答体验反馈。您的建议将会运用到我们的产品优化中,希望能得到您的支持与协助!
速戳参与调研>>>https://t.csdnimg.cn/Kf0y