数学中国

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

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

  [复制链接]
 楼主| 发表于 2023-6-24 15:45 | 显示全部楼层
截止2023年06月23日周五22:34分浏览量102853,回复2164,热度150
截止2023年06月24日周六15:45分浏览量102980,回复2165,热度150
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-6-24 21:52 | 显示全部楼层
截止2023年06月23日周五22:34分浏览量102853,回复2164,热度150
截止2023年06月24日周六21:52分浏览量103015,回复2166,热度150
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-6-25 15:36 | 显示全部楼层
截止2023年06月24日周六21:52分浏览量103015,回复2166,热度150
截止2023年06月25日周日15:36分浏览量103107,回复2167,热度150
回复 支持 反对

使用道具 举报

发表于 2023-6-25 23:14 | 显示全部楼层
截止2023年06月24日周六21:52分浏览量103015,回复2166,热度150
截止2023年06月25日周日23:15分浏览量103171,回复2168,热度150
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-6-26 22:00 | 显示全部楼层
截止2023年06月25日周日23:15分浏览量103171,回复2168,热度150
截止2023年06月26日周一22:00分浏览量103323,回复2169,热度150
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-6-27 20:47 | 显示全部楼层
CLEAR ALL
SELECT 1
USE  d:\孪生素数\孪素19.DBF ALIAS 孪19表
  SELECT 2
USE  d:\孪生素数\孪素基表.DBF ALIAS 孪基表
    kssj=SECONDS()                      &&取出开始时间
   For N=1 to 19
    @ 3,6 say N
       SELECT 孪基表
       go 1
       for m=1 to 22275
           && @ 4,8 say 孪素
           X=孪素+510510*(N-1)
           MZ=X%19
                IF  MZ=0 OR MZ=2
                  else
                  SELECT   孪19表      &&打开盛放素数的表
                  APPEND BLANK                &&增加一条空记录
                  REPLACE 孪19 WITH X     &&将N值付给素
                ENDIF
                SELECT 孪基表
                 SKIP
       endfor
    ENDFOR
   =MESSAGEBOX("运行时间:"+LTRIM(STR(INT((SECONDS()-kssj)/60)))+"分"+LTRIM(STR(MOD(SECONDS()-kssj,60),5,2))+"秒",64,"运行时间提示")
这是用vfp程序通过孪素17基表制作孪素19生成元表。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-6-27 20:56 | 显示全部楼层
CREATE PROJECT
MODIFY DATABASE
SELECT 孪素基表
BROWSE LAST
IMPORT FROM d:\温习素数式\孪生串.xls TYPE XL8 SHEET "Sheet1"
USE 孪素基表 AGAIN IN 0
SELECT 孪素基表
BROWSE LAST
SELECT 孪素基表
BROWSE LAST
IMPORT FROM d:\孪生素数\孪素串.xls TYPE XL8 SHEET "Sheet1"
USE 孪素基表 AGAIN IN 0
SELECT 孪素基表
BROWSE LAST
APPEND FROM d:\孪生素数\孪素串.xls TYPE XL5 SHEET "Sheet1"
GO 1
COUNT ALL FOR 孪素<1000000 TO tj
?tj
CLEAR
USE
DO d:\孪生素数\制作孪生元19.prg
SELECT 孪19表
BROWSE LAST
COUNT ALL FOR 孪19<10000000 TO tj
?tj
GO 1
USE
MODIFY COMMAND d:\孪生素数\制作孪生元19.prg AS 936
这是2023年6月27日的操作。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-6-28 05:06 | 显示全部楼层
一年前的今天,浏览量59972,回复1532
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-6-28 05:15 | 显示全部楼层
浏览量103517-59972=43545/365=119,接近11的平方
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-6-28 12:59 | 显示全部楼层
CLEAR ALL
SELECT 1
USE d:\孪生素数\素数表万.DBF ALIAS 万素
SELECT 2
USE d:\孪生素数\孪素19.DBF ALIAS 孪素19基表
SELECT 3
USE d:\孪生素数\孪生素数表.DBF ALIAS 孪素表
     kssj=SECONDS()                      &&取出开始时间
  For i=1 to 10
         @ 3,6 say i
         SELECT 孪素19基表
       go 1
       SELECT 孪素19基表
    for m=1 to 378675
       k=孪19
       N=k+9699690*(i-1)
        Kf=INT(SQRT(N))       &&求出奇数的开方根
        SELECT  万素             &&打开素数表
        LOCATE FOR 素数>=kf      &&根据开方根,查找最大素数
        DO CASE
                CASE EOF()          &&如果超出素数表最后一条记录
                        GO BOTTOM
                CASE 素数>kf     &&如果找到的素数比开方根值大,就将记录指针退回一个,保证使用的最大素数在开方根内
                        SKIP -1
        ENDCASE
        SSS=RECNO()    &&记录下最大素数(开方根内)记录位置(如果找到的素数等于开方根,则直接读取这个素数的位置)
        GO 9           &&从第一条记录开始读取素数(3)
        FOR j=1 TO SSS-8      &&内循环开始。这个循环实质上是从小到大顺序,依次读取素数。循环值是记录序号
                qmz=MOD(N,素数)   &&以读取的素数为条件,对被判断值求模 【qmz=MOD(bpz,素数)】文本号括着的原在此行语句体部分.特别需要注意的是在用标点符号时,一定改成英文模式及半角状态。
                IF qmz=0 OR qmz=2
                        EXIT         
                ENDIF
                SKIP            &&素数表指针向下移动一个
        ENDFOR
        IF j>sss-8
                SELECT  孪素表  &&打开盛放素数的表
                APPEND BLANK                        &&增加一条空记录
                REPLACE 孪素 WITH N             &&将N值付给素数
        ENDIF
        SELECT 2
        skip
      ENDFOR
   ENDFOR
        =MESSAGEBOX("运行时间:"+LTRIM(STR(INT((SECONDS()-kssj)/60)))+"分"+LTRIM(STR(MOD(SECONDS()-kssj,60),5,2))+"秒",64,"运行时间提示")
这是筛选10个周期中的孪生素数程序(周期值9699690).
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-5-15 06:22 , Processed in 0.087821 second(s), 15 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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