数学中国

 找回密码
 注册
搜索
热搜: 活动 交友 discuz
楼主: 白新岭

[原创]请教vfbpgyfk先生一个编程问题

  [复制链接]
 楼主| 发表于 2025-7-19 17:43 | 显示全部楼层
SELECT 1
   USE D:\最密三生素数文件\素数表.DBF ALIAS 素数表
   SELECT 2
   USE D:\最密三生素数文件\逆三中项.DBF ALIAS 逆三中
   kssj=SECONDS()
   SELECT 1
   GO 1
   For i=1 to 50876228
    @ 5,12 say i
   SELECT 1 &&打开盛放素数的表
   jl=recno()
   PUBLIC A
   A=素数
   SKIP 1
   PUBLIC B
   B=素数
   SKIP 1
   PUBLIC C
   C=素数
   cj1=B-A &&求前后两个素数的差值
   cj2=C-B &&求前后两个素数的差值
     IF cj1=4 AND cj2=2
     SELECT 2
     APPEND BLANK  &&增加一条空记录
     REPLACE nszx WITH A+3 &&将A+3付给变量zszx
     ENDIF
     SELECT 1
     GO jl+1
     ENDFOR
   =MESSAGEBOX("运行时间:"+LTRIM(STR(INT((SECONDS()-kssj)/60)))+"分"+LTRIM(STR(MOD(SECONDS()-kssj,60),5,2))+"秒",64,"运行时间提示")
用素数表制作最密三生素数中项逆元
回复 支持 反对

使用道具 举报

 楼主| 发表于 2025-7-19 17:46 | 显示全部楼层
在10亿60万内有最密三生素数(0,2,6)379706组
回复 支持 反对

使用道具 举报

 楼主| 发表于 2025-7-19 21:40 | 显示全部楼层
SELECT 1
   USE D:\最密三生素数文件\素数表.DBF ALIAS 素数表
   SELECT 2
   USE D:\最密三生素数文件\最密4生素数.DBF ALIAS 密4中
   kssj=SECONDS()
   SELECT 1
   GO 1
   For i=1 to 50876228
    @ 5,12 say i
   SELECT 1 &&打开盛放素数的表
   jl=recno()
   PUBLIC A
   A=素数
   SKIP 1
   PUBLIC B
   B=素数
   SKIP 1
   PUBLIC C
   C=素数
   SKIP 1
   PUBLIC D
   D=素数
   cj1=B-A &&求前后两个素数的差值
   cj2=C-B &&求前后两个素数的差值
   cj3=D-C &&求前后两个素数的差值
     IF cj1=2 AND cj2=4 AND cj3=2
     SELECT 2
     APPEND BLANK  &&增加一条空记录
     REPLACE szx WITH A+4 &&将A+4付给变量szx
     ENDIF
     SELECT 1
     GO jl+1
     ENDFOR
   =MESSAGEBOX("运行时间:"+LTRIM(STR(INT((SECONDS()-kssj)/60)))+"分"+LTRIM(STR(MOD(SECONDS()-kssj,60),5,2))+"秒",64,"运行时间提示")
回复 支持 反对

使用道具 举报

 楼主| 发表于 2025-7-19 22:52 | 显示全部楼层
SELECT 1
   USE d:\最密三生素数文件\最密4生素数.DBF ALIAS 四中项
   SELECT 2
   USE d:\最密三生素数文件\统计最密4中项.DBF ALIAS 四中统计
   
   kssj=SECONDS()
   FOR i=1 TO 10
      @ 3,6 say i
        fw=10^i
        SELECT 1
        COUNT ALL FOR szx<fw TO tj
         SELECT 2
         APPEND BLANK     &&增加一条空记录
         REPLACE n WITH i
         REPLACE 范围 WITH fw
         REPLACE 总量 WITH tj
   ENDFOR
    =MESSAGEBOX("运行时间:"+LTRIM(STR(INT((SECONDS()-kssj)/60)))+"分"+LTRIM(STR(MOD(SECONDS()-kssj,60),5,2))+"秒",64,"运行时间提示")
回复 支持 反对

使用道具 举报

 楼主| 发表于 2025-7-19 23:02 | 显示全部楼层
截止2025年07月18日周五22:31分浏览量848735, 回复3943,热度285
截止2025年07月19日周六23:02分浏览量852363, 回复3954,热度285
回复 支持 反对

使用道具 举报

 楼主| 发表于 2025-7-20 09:02 | 显示全部楼层
截止2025年07月19日周六23:02分浏览量852363, 回复3954,热度285
截止2025年07月20日周日09:02分浏览量853286, 回复3955,热度285
回复 支持 反对

使用道具 举报

 楼主| 发表于 2025-7-20 09:40 | 显示全部楼层
SELECT 1
   USE D:\最密三生素数文件\素数表.DBF ALIAS 素数表
   SELECT 2
   USE D:\最密三生素数文件\最密5生素数.DBF ALIAS 密5中
   kssj=SECONDS()
   SELECT 1
   GO 1
   For i=1 to 50876228
    @ 5,12 say i
   SELECT 1 &&打开盛放素数的表
   jl=recno()
   PUBLIC A
   A=素数
   SKIP 1
   PUBLIC B
   B=素数
   SKIP 1
   PUBLIC C
   C=素数
   SKIP 1
   PUBLIC D
   D=素数
   SKIP 1
   PUBLIC E
   E=素数
   cj1=B-A &&求前后两个素数的差值
   cj2=C-B &&求前后两个素数的差值
   cj3=D-C &&求前后两个素数的差值
   cj4=E-D &&求前后两个素数的差值
     IF cj1=2 AND cj2=4 AND cj3=2 AND cj4=4
     SELECT 2
     APPEND BLANK  &&增加一条空记录
     REPLACE wss WITH A+6 &&将A+4付给变量szx
     ENDIF
     SELECT 1
     GO jl+1
     ENDFOR
   =MESSAGEBOX("运行时间:"+LTRIM(STR(INT((SECONDS()-kssj)/60)))+"分"+LTRIM(STR(MOD(SECONDS()-kssj,60),5,2))+"秒",64,"运行时间提示")
用素数表制作最密5生素数中项
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|数学中国 ( 京ICP备05040119号 )

GMT+8, 2025-7-20 10:35 , Processed in 0.112543 second(s), 15 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表