标题:优化程序或者从新编写求四生素数中项不能合成的偶数
只看楼主
独木星空
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:河北省曲阳县
等 级:版主
威 望:57
帖 子:713
专家分:556
注 册:2016-6-29
得分:0 
SELECT 1
USE d:\二次等差素数数列\素数表.DBF ALIAS 素数表
SELECT 2
USE d:\二次等差素数数列\二次等差五生.DBF ALIAS 等差五生
SELECT 3
USE d:\二次等差素数数列\二次等差六生.DBF ALIAS 等差六生
kssj=SECONDS()
 For i=1 to 10758
      @ 5,12 say i
     SELECT 2
     jl5=记录5
    SELECT  1
    GO jl5  
    jl=recno() &&记录指针位置
    PUBLIC A
    A=素数
    skip
    FOR j=1 TO 3
       n=j
    SELECT 1
    PUBLIC B
    B=素数
    cj=B-A
    IF cj=10
         SELECT 3
         APPEND BLANK     &&增加一条空记录
         REPLACE 六生素 WITH A+10   
         REPLACE 记录6 WITH jl+n
         exit
    ENDIF
      SELECT 1
      skip
   ENDFOR
   SELECT 2
   skip
   ENDFOR
    =MESSAGEBOX("运行时间:"+LTRIM(STR(INT((SECONDS()-kssj)/60)))+"分"+LTRIM(STR(MOD(SECONDS()-kssj,60),5,2))+"秒",64,"运行时间提示")
制作等差6生素数

素数问题的解决是我学习编程永恒的动力。
2022-12-17 20:30
独木星空
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:河北省曲阳县
等 级:版主
威 望:57
帖 子:713
专家分:556
注 册:2016-6-29
得分:0 
SELECT 1
USE d:\二次等差素数数列\素数表.DBF ALIAS 素数表
SELECT 2
USE d:\二次等差素数数列\二次等差六生.DBF ALIAS 等差六生
SELECT 3
USE d:\二次等差素数数列\二次等差七生.DBF ALIAS 等差七生
kssj=SECONDS()
 For i=1 to 1905
      @ 5,12 say i
     SELECT 2
     jl6=记录6
    SELECT  1
    GO jl6  
    jl=recno() &&记录指针位置
    PUBLIC A
    A=素数
    skip
    FOR j=1 TO 4
       n=j
    SELECT 1
    PUBLIC B
    B=素数
    cj=B-A
    IF cj=12
         SELECT 3
         APPEND BLANK     &&增加一条空记录
         REPLACE 七生素 WITH A+12   
         REPLACE 记录7 WITH jl+n
         exit
    ENDIF
      SELECT 1
      skip
   ENDFOR
   SELECT 2
   skip
   ENDFOR
    =MESSAGEBOX("运行时间:"+LTRIM(STR(INT((SECONDS()-kssj)/60)))+"分"+LTRIM(STR(MOD(SECONDS()-kssj,60),5,2))+"秒",64,"运行时间提示")
制作2次等差7生素数

素数问题的解决是我学习编程永恒的动力。
2022-12-17 20:40
独木星空
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:河北省曲阳县
等 级:版主
威 望:57
帖 子:713
专家分:556
注 册:2016-6-29
得分:0 
SELECT 1
USE d:\二次等差素数数列\素数表.DBF ALIAS 素数表
SELECT 2
USE d:\二次等差素数数列\二次等差七生.DBF ALIAS 等差七生
SELECT 3
USE d:\二次等差素数数列\二次等差八生.DBF ALIAS 等差八生
kssj=SECONDS()
 For i=1 to 403
      @ 5,12 say i
     SELECT 2
     jl7=记录7
    SELECT  1
    GO jl7
    jl=recno() &&记录指针位置
    PUBLIC A
    A=素数
    skip
    FOR j=1 TO 5
       n=j
    SELECT 1
    PUBLIC B
    B=素数
    cj=B-A
    IF cj=14
         SELECT 3
         APPEND BLANK     &&增加一条空记录
         REPLACE 八生素 WITH A+14   
         REPLACE 记录8 WITH jl+n
         exit
    ENDIF
      SELECT 1
      skip
   ENDFOR
   SELECT 2
   skip
   ENDFOR
    =MESSAGEBOX("运行时间:"+LTRIM(STR(INT((SECONDS()-kssj)/60)))+"分"+LTRIM(STR(MOD(SECONDS()-kssj,60),5,2))+"秒",64,"运行时间提示")
制作2次等差素数数列,8生素数

素数问题的解决是我学习编程永恒的动力。
2022-12-17 20:48
独木星空
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:河北省曲阳县
等 级:版主
威 望:57
帖 子:713
专家分:556
注 册:2016-6-29
得分:0 
SELECT 1
USE d:\二次等差素数数列\素数表.DBF ALIAS 素数表
SELECT 2
USE d:\二次等差素数数列\二次等差八生.DBF ALIAS 等差八生
SELECT 3
USE d:\二次等差素数数列\二次等差九生.DBF ALIAS 等差九生
kssj=SECONDS()
 For i=1 to 99
      @ 5,12 say i
     SELECT 2
     jl8=记录8
    SELECT  1
    GO jl8
    jl=recno() &&记录指针位置
    PUBLIC A
    A=素数
    skip
    FOR j=1 TO 5
       n=j
    SELECT 1
    PUBLIC B
    B=素数
    cj=B-A
    IF cj=16
         SELECT 3
         APPEND BLANK     &&增加一条空记录
         REPLACE 九生素 WITH A+16
         REPLACE 记录9 WITH jl+n
         exit
    ENDIF
      SELECT 1
      skip
   ENDFOR
   SELECT 2
   skip
   ENDFOR
    =MESSAGEBOX("运行时间:"+LTRIM(STR(INT((SECONDS()-kssj)/60)))+"分"+LTRIM(STR(MOD(SECONDS()-kssj,60),5,2))+"秒",64,"运行时间提示")
制作2次等差素数数列,9生素数

素数问题的解决是我学习编程永恒的动力。
2022-12-17 21:00
独木星空
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:河北省曲阳县
等 级:版主
威 望:57
帖 子:713
专家分:556
注 册:2016-6-29
得分:0 
SELECT 1
USE d:\二次等差素数数列\素数表.DBF ALIAS 素数表
SELECT 2
USE d:\二次等差素数数列\二次等差九生.DBF ALIAS 等差九生
SELECT 3
USE d:\二次等差素数数列\二次等差十生.DBF ALIAS 等差十生
kssj=SECONDS()
 For i=1 to 23
      @ 5,12 say i
     SELECT 2
     jl9=记录9
    SELECT  1
    GO jl9
    jl=recno() &&记录指针位置
    PUBLIC A
    A=素数
    skip
    FOR j=1 TO 6
       n=j
    SELECT 1
    PUBLIC B
    B=素数
    cj=B-A
    IF cj=18
         SELECT 3
         APPEND BLANK     &&增加一条空记录
         REPLACE 十生素 WITH A+18
         REPLACE 记录10 WITH jl+n
         exit
    ENDIF
      SELECT 1
      skip
   ENDFOR
   SELECT 2
   skip
   ENDFOR
    =MESSAGEBOX("运行时间:"+LTRIM(STR(INT((SECONDS()-kssj)/60)))+"分"+LTRIM(STR(MOD(SECONDS()-kssj,60),5,2))+"秒",64,"运行时间提示")

素数问题的解决是我学习编程永恒的动力。
2022-12-17 21:22
独木星空
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:河北省曲阳县
等 级:版主
威 望:57
帖 子:713
专家分:556
注 册:2016-6-29
得分:0 
SELECT 1
USE H:\素数式系数\素数表十亿.dbf ALIAS 素数表
kssj=SECONDS()  &&取出开始时间
s=19.861111111111111111
SELECT 1
  GO 7
  A=素数
  s=s*A*(A-11)/(A-4)/(A-7)
  SKIP 1
        FOR  j=1 TO 50876310
        SELECT 1
        B=素数
        s=s*B*(B-11)/(B-4)/(B-7)
        SELECT 1  
        SKIP
        ENDFOR

?s
=MESSAGEBOX("运行时间:"+LTRIM(STR(INT((SECONDS()-kssj)/60)))+"分"+LTRIM(STR(MOD(SECONDS()-kssj,60),5,2))+"秒",64,"运行时间提示")

素数问题的解决是我学习编程永恒的动力。
2022-12-19 19:36
独木星空
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:河北省曲阳县
等 级:版主
威 望:57
帖 子:713
专家分:556
注 册:2016-6-29
得分:0 
SELECT 1
USE d:\二次等差素数数列\素数表.dbf ALIAS 素数表
kssj=SECONDS()  &&取出开始时间
s=15.640625000000000000
SELECT 1
  GO 7
  A=素数
  s=s*A*(A-11)/(A-3)/(A-8)
  SKIP 1
        FOR  j=1 TO 50876310
        SELECT 1
        B=素数
        s=s*B*(B-11)/(B-3)/(B-8)
        SELECT 1  
        SKIP
        ENDFOR

?s
=MESSAGEBOX("运行时间:"+LTRIM(STR(INT((SECONDS()-kssj)/60)))+"分"+LTRIM(STR(MOD(SECONDS()-kssj,60),5,2))+"秒",64,"运行时间提示")
这是计算最密3生素数的中项,与最密8生素数的中项,和,合成数的数量公式中的公共系数(最小系数)。

素数问题的解决是我学习编程永恒的动力。
2022-12-25 16:20
独木星空
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:河北省曲阳县
等 级:版主
威 望:57
帖 子:713
专家分:556
注 册:2016-6-29
得分:0 
SUM ALL 素数 TO qh for 素数<1000000
?qh
试着学习,sum的用法。
∑(素数)=37550402023   (小于100万之内的素数和)

素数问题的解决是我学习编程永恒的动力。
2023-03-09 21:00



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-507201-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.323375 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved