java 求素数

  • 按定义

即除了1和它本身以外不再被其他的除数整数

public static void main(String[] args) {
    for (int i = 2; i < 100; i++) {
        for (int j = 2; j <= i; j++) {
            if (i==j) {
                System.out.println(i);
            }else if (i%j==0) {
                break;
            }
        }
    }
}
  • 埃氏筛法

先去掉2的倍数,再去掉3的倍数,再去掉5的倍数,……依此类推,把不大√n的所有素数的倍数剔除,最后剩下的就是素数。代码参考自https://www.cnblogs.com/lsucre/p/6599406.html

public static void main(String[] args) {
    //赋值
    int num = 100;
    boolean[] judge = new boolean[num];
    //judge[0] = false;
    //judge[1] = false;
    for (int i = 2; i < judge.length; i++) {
        judge[i] = true;
    }
    //埃氏筛法
    for (int i = 2; i < Math.sqrt(num); i++) {
        if (judge[i] == true) {
            for (int j = i; j*i < num; j++) {
                judge[j*i] = false;
            }
        }
    }
    //输出
    for (int i = 2; i < num; i++) {
        if (judge[i] == true) {
            System.out.println(i);
        }
    }
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 第一章数和数的运算 一概念 (一)整数 1整数的意义 自然数和0都是整数。 2自然数 我们在数物体的时候,用来表示...
    meychang阅读 2,885评论 0 5
  • 基本运算 取模(mod)取余(rem) 定义 给定一个正整数p,任意一个整数n,一定存在等式 : n = kp +...
    passwd_阅读 2,330评论 0 3
  • 蓦然看窗 夜 忽然涂满了玻璃 我想用各种逻辑 说服自己 让我去迎合别人 甚至亲人的需求 让生活重新变得 合理 可阴...
    陈言著诗随云飞阅读 150评论 1 3
  • 食物之于人类,早已超脱了原始果腹的范畴之内。那种唇齿之间味蕾之中残存的余味,往往承载了一座城市的记忆与感情寄托,历...
    二更阅读 6,763评论 43 115
  • 走进一十年代 看完了一部电影,闲来翻看旧日志,猛然发觉承上启下的跨年日志在这告09进10之时被疏漏了,亡羊补...
    翔空玉宇阅读 409评论 0 2

友情链接更多精彩内容