| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
共有 1429 人关注过本帖
标题:简单的筛选二生素数程序
只看楼主 加入收藏
独木星空
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:河北省曲阳县
等 级:版主
威 望:71
帖 子:1203
专家分:683
注 册:2016-6-29
收藏
得分:0 
SELECT 1
USE D:\素数式新\素数式7.dbf ALIAS 素数式7
SELECT 2
USE D:\素数式新\素数式11.dbf ALIAS 素数式11
kssj=SECONDS()  &&取出开始时间
 FOR  i=1 TO 11  &&又遇到以前类似事情,外循环变量用了j与下面的内循环变量一致,所以提示0不能做除数。
    SELECT 1
    GO 1
    ss=11
    FOR j=1 TO 48
        sz7=Ss7
        ssy=sz7+(i-1)*210
        ys=MOD(ssy,ss)
        IF ys=0
        else
      SELECT 2
      APPEND BLANK     &&增加一条空记录
      REPLACE Ss11 WITH ssy
      ENDIF  
      SELECT 1
      SKIP
    ENDFOR
 ENDFOR
=MESSAGEBOX("运行时间:"+LTRIM(STR(INT((SECONDS()-kssj)/60)))+"分"+LTRIM(STR(MOD(SECONDS()-kssj,60),5,2))+"秒",64,"运行时间提示")

素数问题的解决是我学习编程永恒的动力。
2025-05-19 22:09
独木星空
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:河北省曲阳县
等 级:版主
威 望:71
帖 子:1203
专家分:683
注 册:2016-6-29
收藏
得分:0 
SELECT 1
USE D:\素数式新\素数式11.dbf ALIAS 素数式11
SELECT 2
USE D:\素数式新\素数式13.dbf ALIAS 素数式13
kssj=SECONDS()  &&取出开始时间
 FOR  i=1 TO 13  &&又遇到以前类似事情,外循环变量用了j与下面的内循环变量一致,所以提示0不能做除数。
    SELECT 1
    GO 1
    ss=13
    FOR j=1 TO 480
        sz11=Ss11
        ssy=sz11+(i-1)*2310
        ys=MOD(ssy,ss)
        IF ys=0
        else
      SELECT 2
      APPEND BLANK     &&增加一条空记录
      REPLACE Ss13 WITH ssy
      ENDIF  
      SELECT 1
      SKIP
    ENDFOR
 ENDFOR
=MESSAGEBOX("运行时间:"+LTRIM(STR(INT((SECONDS()-kssj)/60)))+"分"+LTRIM(STR(MOD(SECONDS()-kssj,60),5,2))+"秒",64,"运行时间提示")

素数问题的解决是我学习编程永恒的动力。
2025-05-19 22:09
独木星空
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:河北省曲阳县
等 级:版主
威 望:71
帖 子:1203
专家分:683
注 册:2016-6-29
收藏
得分:0 
SELECT 1
USE D:\素数式新\素数式13.dbf ALIAS 素数式13
SELECT 2
USE D:\素数式新\素数式17.dbf ALIAS 素数式17
kssj=SECONDS()  &&取出开始时间
 FOR  i=1 TO 17  &&又遇到以前类似事情,外循环变量用了j与下面的内循环变量一致,所以提示0不能做除数。
    SELECT 1
    GO 1
    ss=17
    FOR j=1 TO 5760
        sz13=Ss13
        ssy=sz13+(i-1)*30030
        ys=MOD(ssy,ss)
        IF ys=0
        else
      SELECT 2
      APPEND BLANK     &&增加一条空记录
      REPLACE Ss17 WITH ssy
      ENDIF  
      SELECT 1
      SKIP
    ENDFOR
 ENDFOR
=MESSAGEBOX("运行时间:"+LTRIM(STR(INT((SECONDS()-kssj)/60)))+"分"+LTRIM(STR(MOD(SECONDS()-kssj,60),5,2))+"秒",64,"运行时间提示")

素数问题的解决是我学习编程永恒的动力。
2025-05-19 22:18
独木星空
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:河北省曲阳县
等 级:版主
威 望:71
帖 子:1203
专家分:683
注 册:2016-6-29
收藏
得分:0 
SELECT 1
USE D:\素数式新\素数式17.dbf ALIAS 素数式17
SELECT 2
USE D:\素数式新\素数式19.dbf ALIAS 素数式19
kssj=SECONDS()  &&取出开始时间
 FOR  i=1 TO 19  &&又遇到以前类似事情,外循环变量用了j与下面的内循环变量一致,所以提示0不能做除数。
    SELECT 1
    GO 1
    ss=19
    FOR j=1 TO 92160
        sz17=Ss17
        ssy=sz17+(i-1)*510510
        ys=MOD(ssy,ss)
        IF ys=0
        else
      SELECT 2
      APPEND BLANK     &&增加一条空记录
      REPLACE Ss19 WITH ssy
      ENDIF  
      SELECT 1
      SKIP
    ENDFOR
 ENDFOR
=MESSAGEBOX("运行时间:"+LTRIM(STR(INT((SECONDS()-kssj)/60)))+"分"+LTRIM(STR(MOD(SECONDS()-kssj,60),5,2))+"秒",64,"运行时间提示")

素数问题的解决是我学习编程永恒的动力。
2025-05-19 22:21
独木星空
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:河北省曲阳县
等 级:版主
威 望:71
帖 子:1203
专家分:683
注 册:2016-6-29
收藏
得分:0 
SELECT 1
USE D:\素数式新\素数式19.DBF ALIAS 素数式
SELECT 2
USE D:\素数式新\最密k生素数间距19.DBF ALIAS 间距
kssj=SECONDS()
FOR h=10 TO 15
    @ 5,12 say h
    k=h+1
    SELECT  1
    GO 1
    E=1000
      For i=1 to 1658760
     
      SELECT  1     &&打开盛放素数式的表
      jl=recno()
   
      PUBLIC A
      A=ss19
      SKIP h
      PUBLIC B
      B=ss19
      cj1=B-A  &&求前后两个素数的差值
      IF E>cj1
      E=cj1
      ELSE E<=cj1
   
      E=E
         
      ENDIF
      SELECT 1
      GO jl+1
      ENDFOR
      SELECT 2
      APPEND BLANK     &&增加一条空记录
      REPLACE ksss19  WITH k &&将k值付给ksss
      REPLACE jj19  WITH E
      
   ENDFOR
    =MESSAGEBOX("运行时间:"+LTRIM(STR(INT((SECONDS()-kssj)/60)))+"分"+LTRIM(STR(MOD(SECONDS()-kssj,60),5,2))+"秒",64,"运行时间提示")

素数问题的解决是我学习编程永恒的动力。
2025-05-20 08:30
独木星空
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:河北省曲阳县
等 级:版主
威 望:71
帖 子:1203
专家分:683
注 册:2016-6-29
收藏
得分:0 
SELECT 1
USE d:\三生素数中项\三中和统计表.DBF ALIAS 三中和统计
kssj=SECONDS()
FOR i=1 TO 999999
   @ 3,6 say i
      FOR j=1  TO 3
         m=30*i+(j-1)*6-2
         SELECT  1  
         APPEND BLANK   
         REPLACE szhh WITH m
         REPLACE tj2 WITH 0
     ENDFOR
ENDFOR
    =MESSAGEBOX("运行时间:"+LTRIM(STR(INT((SECONDS()-kssj)/60)))+"分"+LTRIM(STR(MOD(SECONDS()-kssj,60),5,2))+"秒",64,"运行时间提示")
给三中和置数(即把最密三中项的和(两个三中项相加得到的结果,预先放置在一个表上))

素数问题的解决是我学习编程永恒的动力。
7 天前 10:26
独木星空
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:河北省曲阳县
等 级:版主
威 望:71
帖 子:1203
专家分:683
注 册:2016-6-29
收藏
得分:0 
SELECT 1
 USE d:\三生素数中项\正最密三生素数中项.DBF ALIAS 正三中项
 SELECT 2
 USE d:\三生素数中项\三中和统计表.DBF ALIAS 三中和统计
 kssj=SECONDS()
 SELECT 1
 GO 1 &&定位在第一个参与运算值上
 FOR i=1 TO 258
   @ 3,6 say i
   jl=recno()
   PUBLIC A
   A=三中
      SELECT 1
      GO 1
      FOR j=1  TO 8542
      PUBLIC B
      B=三中
      n=A+B
      SELECT  2
      GO   3*INT((n+2)/30-1)+MOD(n+2,30)/6+1
      REPLACE tj2 WITH tj2+1
      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,"运行时间提示")
这是把最密3生素数中项的和分配到其合成值上的vfp程序。

素数问题的解决是我学习编程永恒的动力。
7 天前 16:58
独木星空
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:河北省曲阳县
等 级:版主
威 望:71
帖 子:1203
专家分:683
注 册:2016-6-29
收藏
得分:0 
SELECT 1
 USE d:\三生素数中项\正最密三生素数中项.DBF ALIAS 正三中项
 SELECT 2
 USE d:\三生素数中项\三中和统计表.DBF ALIAS 三中和统计
 kssj=SECONDS()
 SELECT 1
 GO 8543 &&定位在第一个参与运算值上
 FOR i=1 TO 3241
   @ 3,6 say i
   jl=recno()
   PUBLIC A
   A=三中
      SELECT 1
      GO 8543
      FOR j=1  TO 3241
      PUBLIC B
      B=三中
      n=A+B
      SELECT  2
      GO   3*INT((n+2)/30-1)+MOD(n+2,30)/6+1
      REPLACE tj2 WITH tj2+1
      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,"运行时间提示")
分配三生素数中项之和从1千万到1.5千万之间两项之和(指(a+b)^2=a^2+2ab+b^2中的b^2部分,无交叉项,交叉项另外计算分配)

素数问题的解决是我学习编程永恒的动力。
6 天前 07:26
独木星空
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:河北省曲阳县
等 级:版主
威 望:71
帖 子:1203
专家分:683
注 册:2016-6-29
收藏
得分:0 
SELECT 1
 USE d:\三生素数中项\正最密三生素数中项.DBF ALIAS 正三中项
 SELECT 2
 USE d:\三生素数中项\三中和统计表.DBF ALIAS 三中和统计
 kssj=SECONDS()
 SELECT 1
 GO 1 &&定位在第一个参与运算值上,本次运行交叉部分,外循坏取前段,内循环取后段,一次产生两组
 FOR i=1 TO 8542
   @ 3,6 say i
   jl=recno()
   PUBLIC A
   A=三中
      SELECT 1
      GO 8543
      FOR j=1  TO 3241
      PUBLIC B
      B=三中
      n=A+B
      SELECT  2
      GO   3*INT((n+2)/30-1)+MOD(n+2,30)/6+1
      REPLACE tj2 WITH tj2+2
      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,"运行时间提示")

素数问题的解决是我学习编程永恒的动力。
6 天前 08:45
独木星空
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:河北省曲阳县
等 级:版主
威 望:71
帖 子:1203
专家分:683
注 册:2016-6-29
收藏
得分:0 
SELECT 1
USE D:\素数式系数\三生素数jg6.DBF ALIAS 三素jg6表
SELECT 2
USE D:\素数式系数\逆三生素数中项.DBF ALIAS 逆三生素数中项表
kssj=SECONDS()
SELECT  1
GO 1
For i=1 to 111156
      @ 5,12 say i
    SELECT  1     &&打开盛放素数式的表
    jl=recno()
    PUBLIC A
    A=sss6
   
    IF MOD(A,3)=1
         SELECT 2
         APPEND BLANK     &&增加一条空记录
         REPLACE nsz WITH A    &&将N值付给素数式
    ENDIF
      SELECT 1
      GO jl+1
   ENDFOR
    =MESSAGEBOX("运行时间:"+LTRIM(STR(INT((SECONDS()-kssj)/60)))+"分"+LTRIM(STR(MOD(SECONDS()-kssj,60),5,2))+"秒",64,"运行时间提示")

素数问题的解决是我学习编程永恒的动力。
6 天前 13:07
快速回复:简单的筛选二生素数程序
数据加载中...
 
   



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

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.019123 second(s), 10 queries.
Copyright©2004-2025, BC-CN.NET, All Rights Reserved