** 找素数**

素数就是不能再进行等分的整数。比如:7,11。而9不是素数,因为它可以平分为3等份。一般认为最小的素数是2,接着是3,5,…

请问,第100002(十万零二)个素数是多少?

请注意:“2” 是第一素数,“3” 是第二个素数,依此类推。

不需要提交源代码,只要写出准确的结果即可!

答案写在:“解答.txt”中,不要写在这里。

参考答案:

1299743

import java.math.BigInteger;

public class Main1 {
//方法1:使用大整数,自带判断素数方法,算出最终结果大约要1分钟
public void printResult1() {
int count = 1;
BigInteger a = new BigInteger("3");
BigInteger b = BigInteger.ONE;
for(int i = 3;i < 10000000;i++){
if(a.isProbablePrime(i)) {
count++;
}
if(count == 100002) {
System.out.println(a);
break;
}
a = a.add(b);
}
return;
} //方法2:使用埃拉托色尼筛选法,算出结果大约10秒
public void printResult2() {
int[] A = new int[10000000];
for(int i = 2;i < 10000000;i++)
A[i] = i; for(int i = 2;i < 4000;i++) { // 4000 * 4000 > 10000000,此处是因为i*i为i的当前条件下最小合数
int j = 0;
if(A[i] != 0)
j = i * i; //i的合数起始最小位置
while(j < 10000000) {
A[j] = 0;
j = j + i; //依次递增i个位置的数均是i的合数
} } int count = 0;
for(int i = 2;i < 10000000;i++) {
if(A[i] != 0)
count++;
if(count == 100002) {
System.out.println(A[i]);
break;
}
}
return;
} public static void main(String[] args) {
Main1 test = new Main1();
test.printResult2();
}
}

java实现找素数的更多相关文章

  1. java多线程找素数实例

    package ltb20180106; public class FindPrime implements Runnable{ private int prime; private int q; p ...

  2. 记一次解决cmd中执行java提示"找不到或无法加载主类"的问题

    今天遇到一个问题:在cmd命令行中,用javac编译java文件可以成功,但是用java执行却提示“找不到或无法加载主类”.现将该问题的原因以及解决办法记录一下. 先理解一下系统变量path和clas ...

  3. Java 错误: 找不到或无法加载主类,问题集合

      正确编译命令: javac Hello.java 正确运行命令: java Hello   错误1:H:\code>java Hello.java 错误: 找不到或无法加载主类 Hello. ...

  4. 编译和运行java文件 找不到或无法加载主类

    这边提供一个关于程序中含有package关键字,使用“终端”运行程序时出现“找不到或无法加载主类”,而使用Eclipse软件可以正常运行程序的可能解决办法. 例如程序名为HelloWorldTest. ...

  5. java高效判断素数

    java高效判断素数 package solution; public class Prime { // 偶数可以由有两个素数相加得到, 一个偶数可能有多个这样的两个素数, 请寻找到 这样两个素数,让 ...

  6. 【maven】【IDEA】idea中使用maven编译项目,报错java: 错误: 找不到符号 【2】

    =================================================================================== idea中使用maven编译项目 ...

  7. JAVA 练习 找出素数

    package com.zhang.hello; public class Task { /** * 1. 输出打印九九乘法表 * */ public void NO1(){ for(int i=1; ...

  8. Java之姐妹素数

    所谓素数就是指相邻两个奇数均为素数, 判断一个数是否为素数的基本方法是:(以n=5为例) package com.cdp.SuShu; public class sushujisuan { publi ...

  9. 没有R.java问题找不到getActionBar()方法

    android项目,可是项目中没有重要的R.java,并且报错,说是找不到getActionBar()方法,上网寻找原因,终于寻得解决方法:    1.解决项目中没有R.java问题.在Eclipse ...

随机推荐

  1. flink源码阅读

    Flink面试--源码篇 1.Flink Job的提交流程? 2.Flink所谓"三层图"结构是哪几个"图"? 3.JobManger在集群中扮演了什么角色? ...

  2. 关于oracle怎么看清楚字段的一些实践

    在oracle存储过程或者平时编码中会有很多时候对不上字段,这时候在字段逗号后面可以主动加上--数字. 还有的是应该注意尽量让每个字段都占有一行的空间.下面部分截图说明

  3. python --字符串学习

    一 转义字符 借用一个特殊的方法表示一系列不方便写出的内容,比如回车键,换行符,退格键 借助反斜杠字符,一旦出现反斜杠,则反斜杠后面一个或者几个字符表示已经不是原来的意思了 在字符串中,一旦出现了斜杠 ...

  4. C# 数据操作系列 - 7. EF Core 导航属性配置

    在上一篇,大概介绍了Entity Framework Core关于关系映射的逻辑.在上一篇中留下了EF的外键映射没有说,也就是一对一,一对多,多对一,多对多的关系等.这一篇将为大家细细分析一下,如何设 ...

  5. (mysql)数据库笔记

    一.数据库的特点: a.实现数据共享  b.采用特定的数据类型. c.具有较高的数据独立性 d.具有统一的数据控制功能. 二.mysql的优势: a.速度:运行速度快 b.价格:mysql对多数个人来 ...

  6. 【雕爷学编程】MicroPython动手做(02)——尝试搭建K210开发板的IDE环境

    喜欢今日头条,偶然看到广告,半个多月前交了8.9元,报名参加了头条上Python的四天培训课,呵呵,总算是有了零的开始(还是有点收获的,见https://www.sohu.com/a/38112874 ...

  7. DRF认证组件

    1.DRF认证组件之视图注册用法(自定义简单使用) settings.py配置 INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.a ...

  8. SpringBoot_自动装配

    SpringBoot SrpingBoot 给人的第一印象就是 简洁,易上手.它是自 Spring 而来为了简化我们开发的,而经历过了 Spring 中繁琐的配置文件,我确实很好奇它到底是怎么帮我们把 ...

  9. 技术大佬:我去,你竟然还不会用 this 关键字

    上一篇文章写的是 Spring Boot 的入门,结果有读者留言说,Java 都还没搞完,搞什么 Spring Boot,唬得我一愣一愣的.那这篇就继续来搞 Java,推出广受好评的我去系列第四集:你 ...

  10. tomcat关于配置servlet的url-pattern的问题详解

    目录 1 servlet url-pattern的匹配问题 1.1 精确匹配 1.2 路径匹配 1.3 后缀匹配 注意:路径和后缀匹配无法同时设置 2 url-pattern中/和/*的区别 3 ur ...