当前位置: 代码迷 >> J2SE >> 怎么求出1-1000的质素 (不能用除法和求余)
  详细解决方案

怎么求出1-1000的质素 (不能用除法和求余)

热度:216   发布时间:2016-04-24 01:31:24.0
如何求出1-1000的质素 (不能用除法和求余)
第一题:如题 !
还有第二题:如何将0-1之间的数开方 (不能用Math函数)

------解决方案--------------------
第一题:
Java code
        int max=1000;        int[] ns=new int[max+1];        for(int i=0;i<max;i++){            ns[i]=i;        }        m1:for(int m=2;m<max;m++){            int tm=ns[m];            if(tm==0){                continue;            }            for(int n=m;n<max;n++){                int r=ns[n]*tm;                if(r>max){                    continue m1;                }                if(r>0){                    ns[r]=0;                }            }        }        for(int n:ns){            if(n>=2){                System.out.print(n+",");            }        }
  相关解决方案