SELECT 1
USE D:\三角递增法\四生素数表.DBF ALIAS 四素表
SELECT 2
USE D:\三角递增法\四生素数表中.DBF ALIAS 四中表
kssj=SECONDS()
SELECT 1
GO 1
For i=1 to 102949
@ 5,12 say i
SELECT 1 &&打开盛放素数式的表
&& jl=recno()
PUBLIC A
A=四素
SELECT 2
APPEND BLANK &&增加一条空记录
REPLACE 四中 WITH A-4 &&将N值付给素数式
SELECT 1
skip
ENDFOR
=MESSAGEBOX("运行时间:"+LTRIM(STR(INT((SECONDS()-kssj)/60)))+"分"+LTRIM(STR(MOD(SECONDS()-kssj,60),5,2))+"秒",64,"运行时间提示")
这是把四生素数表(用末素代替一组四生素数),改写成用四生素数中项代替一组四生素数程序。
SELECT 1
USE D:\三角递增法\四生素数表中.DBF ALIAS 四中表
SELECT 2
USE D:\三角递增法\偶数表.DBF ALIAS 偶数表
kssj=SECONDS()
SELECT 1
GO 1
For i=1 to 2949
@ 5,12 say i
SELECT 1
jl=recno()
PUBLIC A
A=四中
SELECT 1
GO 1
For j=1 to 102949
@ 15,22 say j
PUBLIC B
B=四中
C=A+B
SELECT 2
COUNT all FOR C=偶数 TO tj
IF tj=0
SELECT 2
APPEND BLANK
REPLACE 偶数 WITH C
ENDIF
SELECT 1
SKIP
ENDFOR
SELECT 1
GO jl+1
ENDFOR
=MESSAGEBOX("运行时间:"+LTRIM(STR(INT((SECONDS()-kssj)/60)))+"分"+LTRIM(STR(MOD(SECONDS()-kssj,60),5,2))+"秒",64,"运行时间提示")
&&不成功案例,因为查找是否已有太费时间
本想着制作出一个能合成的偶数表,然后排序后,把间断的偶数挖出来即可。
梦想是美好的 ,现实总是残酷的。事与愿违。
SELECT 1
USE D:\三角递增法\四生素数表中.DBF ALIAS 四中表
SELECT 2
USE D:\三角递增法\偶数表.DBF ALIAS 偶数表
kssj=SECONDS()
SELECT 1
GO 1
For i=1 to 100
@ 5,12 say i
SELECT 1
jl=recno()
PUBLIC A
A=四中
SELECT 1
GO 1
For j=1 to 102949
@ 15,22 say j
PUBLIC B
B=四中
C=A+B
SELECT 2
APPEND BLANK
REPLACE 偶数 WITH C
SELECT 1
SKIP
ENDFOR
SELECT 1
GO jl+1
ENDFOR
=MESSAGEBOX("运行时间:"+LTRIM(STR(INT((SECONDS()-kssj)/60)))+"分"+LTRIM(STR(MOD(SECONDS()-kssj,60),5,2))+"秒",64,"运行时间提示")
这是直接制作偶数表。不过得1000来个表,最低也得500个表,然后对每个表去重复的,留下唯一值,那么制作出来的偶数表,如何去重,及排序,挑出唯一值呢?