求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的素数,这样的算法思想可以吗?程序不够完善,希望大神解惑
添加回答
举报
0/150
提交
取消