|
本帖最后由 朱明君 于 2022-2-22 11:45 编辑
32以内的质数个数算法
第1步,32/2=16个奇数、,为了计算简捷我们直接将奇数1改成质数2,
第2步,(16-2)/3=4,(取整数), 4个合数 (9,15,21,27)
笫3步,(16-8)/5=1,(取整数), 1个合数 25,
32/2-(4+1)=11个质数。这11个质数两两相加时(其中包括质数自身相加),就会得到从4到62的连续偶数。
质数的对应偶数计算公式:设奇质数为X,对应偶数为y,
则{(X^2+1)/2}-X=y,
3=2, 5=8, 7=18, 11=50, 13=72, 17=128, 19=162,-------。
设奇质数为X, (小于该奇质数的所有质数为x1,x2,x3,…xn), 对应偶数为y,
则[(x^2+1)/2-y]/x1=Z(取整数),其中[(x^2+1)/2]>y.
前区 后区
1-------------------------------X--------------------------2(Z-1)+X
①,后区公式:{[Z+(X-1)/2]-Y}/X=Z2 (取整数),
x1,x2,-------xn,
②, 前区公式:{[(X+1)/2]-Y}/X=Z2 (取整数),
x1,x2------xn,
{[(N/2)-Y]/X}-【【{[Z+(X-1)/2]-Y}/X】-{[(X+1)/2]-Y}/X】=Z,
3
5, 3,
7, 3,
5,3,
11,3,
5,3,
7,3,
5,3,
13,3,
5,3,
7,3,
5,3,
17,3,
5,3,
7, 3,
5, 3,
11, 3,
5, 3,
7, 3,
5, 3,
13, 3,
5, 3,
7, 3,
5, 3,
11, 3,
5, 3,
7, 3,
5, 3,
双筛
32/2=16组
第1筛去掉2的所有倍数存下8组,
1, 3, 5, 7, 9, 11, 13,15,
31,29,27,25,23,21, 19,17,
第2筛去掉除3外所有3的倍数,存下4组,
1, 3, 7, 13,
31,29,25,19,
第3筛去掉除5外所有5的倍数,存下3组,
1, 3, 13,
31,29, 19,
再去掉1,存下2组,
3, 13,
29,19,
32=3+29=13+19 |
|