埃氏筛选2~100的素数
求2~100的素数,看了网上很多算法,都是用表来一层一层筛选的。
但是如果,我用一个嵌套的for循环,第一层循环i为2~100的数。for(int i=2;i>101;i++)
第二层循环为2,3,5,7……,即for(int j=2;j=j*2-1;j++)
if(i%j==0) continue;
else{if(i<j||2*j-1>100)
syso(i);
}
我是这么想的,埃氏筛选首先筛的是2的倍数,然后是3的倍数,然后是5的倍数,我想偶数肯定能被2整除,那第一步除去了偶数,然后筛选除去能被3,5,7,9,这些奇数整除的整数,最后剩下了来的就是2~1100的素数,这样的算法思想可以吗?程序不够完善,希望大神解惑
慕运维8582118
浏览 1060回答 1
1回答
-
尧叔
当然可以,另外 3,5,7 没有9
打开App,查看更多内容