zoukankan      html  css  js  c++  java
  • 埃氏筛法

    题目:

    用“埃氏筛法”求2~100以内的素数。2~100以内的数,先去掉2的倍数,再去掉3的倍数,再去掉5的倍数,……依此类推,最后剩下的就是素数。

    输出:2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97

    分析先去掉2的倍数,再去掉3的倍数,再去掉5的倍数”,可以运用数组和标记元素的方法。

    代码如下:

    package 埃式塞法;
    
    public class pan_duan_su_shu {
        public static void main(String[] args) {
        Integer[] a=new Integer[100];
        int i,j;
        for(i=0;i<99;i++){
            a[i]=i+2;
        }
        for(i=2;i<=50;i++){
            for(j=2;j<99;j++){
                if(a[j]%i==0&&a[j]/i!=1){//需要注意a[j]/i!=1,若不加此条件则不可能五十以内的数不可能进入if语句
                    a[j]=0;
                }
            }
        }
        for(i=0;i<99;i++){
            if(a[i]!=0){
                System.out.println(a[i]);
            }
            
        }
        }
    }

    转自:http://www.cnblogs.com/chance88/p/4485790.html

    祝你早日攒够失望,然后开始新的生活。
  • 相关阅读:
    Vue过滤器使用
    vue基础
    lesson
    lesson
    lesson
    lesson
    rm 命令详解
    alias 命令详解
    cd 命令详解
    cut 命令详解
  • 原文地址:https://www.cnblogs.com/LuRenJiang/p/6582036.html
Copyright © 2011-2022 走看看